Preparing report...

Report for github.com/goccy/go-reflect

A+    Excellent!    Found 3 issues across 14 files

Tweet

gofmt100%

Gofmt formats Go programs. We run gofmt -s on your code, where -s is for the "simplify" command

No problems detected. Good job!


go_vet100%

go vet examines Go source code and reports suspicious constructs, such as Printf calls whose arguments do not align with the format string.

No problems detected. Good job!


gocyclo100%

Gocyclo calculates cyclomatic complexities of functions in Go source code. The cyclomatic complexity of a function is calculated according to the following rules: 1 is the base complexity of a function +1 for each 'if', 'for', 'case', '&&' or '||' Go Report Card warns on functions with cyclomatic complexity > 15.

No problems detected. Good job!


golint78%

Golint is a linter for Go source code.

    • go-reflect/value.go
    • Line 8: warning: don't use underscores in Go names; func value_Copy should be valueCopy (golint)
    • Line 12: warning: don't use underscores in Go names; func value_Append should be valueAppend (golint)
    • Line 16: warning: don't use underscores in Go names; func value_AppendSlice should be valueAppendSlice (golint)
    • Line 20: warning: don't use underscores in Go names; func value_Indirect should be valueIndirect (golint)
    • Line 24: warning: don't use underscores in Go names; func value_MakeChan should be valueMakeChan (golint)
    • Line 28: warning: don't use underscores in Go names; func value_MakeFunc should be valueMakeFunc (golint)
    • Line 34: warning: don't use underscores in Go names; func value_MakeMap should be valueMakeMap (golint)
    • Line 38: warning: don't use underscores in Go names; func value_MakeMapWithSize should be valueMakeMapWithSize (golint)
    • Line 42: warning: don't use underscores in Go names; func value_MakeSlice should be valueMakeSlice (golint)
    • Line 46: warning: don't use underscores in Go names; func value_New should be valueNew (golint)
    • Line 50: warning: don't use underscores in Go names; func value_NewAt should be valueNewAt (golint)
    • Line 54: warning: don't use underscores in Go names; func value_Select should be valueSelect (golint)
    • Line 59: warning: don't use underscores in Go names; func value_Zero should be valueZero (golint)
    • Line 63: warning: don't use underscores in Go names; func value_Addr should be valueAddr (golint)
    • Line 67: warning: don't use underscores in Go names; func value_Bool should be valueBool (golint)
    • Line 71: warning: don't use underscores in Go names; func value_Bytes should be valueBytes (golint)
    • Line 75: warning: don't use underscores in Go names; func value_Call should be valueCall (golint)
    • Line 79: warning: don't use underscores in Go names; func value_CallSlice should be valueCallSlice (golint)
    • Line 83: warning: don't use underscores in Go names; func value_CanAddr should be valueCanAddr (golint)
    • Line 87: warning: don't use underscores in Go names; func value_CanSet should be valueCanSet (golint)
    • Line 91: warning: don't use underscores in Go names; func value_CanInterface should be valueCanInterface (golint)
    • Line 95: warning: don't use underscores in Go names; func value_Cap should be valueCap (golint)
    • Line 99: warning: don't use underscores in Go names; func value_Close should be valueClose (golint)
    • Line 103: warning: don't use underscores in Go names; func value_Complex should be valueComplex (golint)
    • Line 107: warning: don't use underscores in Go names; func value_Convert should be valueConvert (golint)
    • Line 111: warning: don't use underscores in Go names; func value_Elem should be valueElem (golint)
    • Line 115: warning: don't use underscores in Go names; func value_Field should be valueField (golint)
    • Line 119: warning: don't use underscores in Go names; func value_FieldByIndex should be valueFieldByIndex (golint)
    • Line 123: warning: don't use underscores in Go names; func value_FieldByName should be valueFieldByName (golint)
    • Line 127: warning: don't use underscores in Go names; func value_FieldByNameFunc should be valueFieldByNameFunc (golint)
    • Line 131: warning: don't use underscores in Go names; func value_Float should be valueFloat (golint)
    • Line 135: warning: don't use underscores in Go names; func value_Index should be valueIndex (golint)
    • Line 139: warning: don't use underscores in Go names; func value_Int should be valueInt (golint)
    • Line 143: warning: don't use underscores in Go names; func value_Interface should be valueInterface (golint)
    • Line 147: warning: don't use underscores in Go names; func value_InterfaceData should be valueInterfaceData (golint)
    • Line 151: warning: don't use underscores in Go names; func value_IsNil should be valueIsNil (golint)
    • Line 155: warning: don't use underscores in Go names; func value_IsValid should be valueIsValid (golint)
    • Line 159: warning: don't use underscores in Go names; func value_Kind should be valueKind (golint)
    • Line 163: warning: don't use underscores in Go names; func value_Len should be valueLen (golint)
    • Line 167: warning: don't use underscores in Go names; func value_MapIndex should be valueMapIndex (golint)
    • Line 171: warning: don't use underscores in Go names; func value_MapKeys should be valueMapKeys (golint)
    • Line 175: warning: don't use underscores in Go names; func value_MapRange should be valueMapRange (golint)
    • Line 179: warning: don't use underscores in Go names; func value_Method should be valueMethod (golint)
    • Line 183: warning: don't use underscores in Go names; func value_MethodByName should be valueMethodByName (golint)
    • Line 187: warning: don't use underscores in Go names; func value_NumField should be valueNumField (golint)
    • Line 191: warning: don't use underscores in Go names; func value_NumMethod should be valueNumMethod (golint)
    • Line 195: warning: don't use underscores in Go names; func value_OverflowComplex should be valueOverflowComplex (golint)
    • Line 199: warning: don't use underscores in Go names; func value_OverflowFloat should be valueOverflowFloat (golint)
    • Line 203: warning: don't use underscores in Go names; func value_OverflowInt should be valueOverflowInt (golint)
    • Line 207: warning: don't use underscores in Go names; func value_OverflowUint should be valueOverflowUint (golint)
    • Line 211: warning: don't use underscores in Go names; func value_Pointer should be valuePointer (golint)
    • Line 215: warning: don't use underscores in Go names; func value_Recv should be valueRecv (golint)
    • Line 220: warning: don't use underscores in Go names; func value_Send should be valueSend (golint)
    • Line 224: warning: don't use underscores in Go names; func value_Set should be valueSet (golint)
    • Line 228: warning: don't use underscores in Go names; func value_SetBool should be valueSetBool (golint)
    • Line 232: warning: don't use underscores in Go names; func value_SetBytes should be valueSetBytes (golint)
    • Line 236: warning: don't use underscores in Go names; func value_SetCap should be valueSetCap (golint)
    • Line 240: warning: don't use underscores in Go names; func value_SetComplex should be valueSetComplex (golint)
    • Line 244: warning: don't use underscores in Go names; func value_SetFloat should be valueSetFloat (golint)
    • Line 248: warning: don't use underscores in Go names; func value_SetInt should be valueSetInt (golint)
    • Line 252: warning: don't use underscores in Go names; func value_SetLen should be valueSetLen (golint)
    • Line 256: warning: don't use underscores in Go names; func value_SetMapIndex should be valueSetMapIndex (golint)
    • Line 260: warning: don't use underscores in Go names; func value_SetPointer should be valueSetPointer (golint)
    • Line 264: warning: don't use underscores in Go names; func value_SetString should be valueSetString (golint)
    • Line 268: warning: don't use underscores in Go names; func value_SetUint should be valueSetUint (golint)
    • Line 272: warning: don't use underscores in Go names; func value_Slice should be valueSlice (golint)
    • Line 276: warning: don't use underscores in Go names; func value_Slice3 should be valueSlice3 (golint)
    • Line 280: warning: don't use underscores in Go names; func value_String should be valueString (golint)
    • Line 284: warning: don't use underscores in Go names; func value_TryRecv should be valueTryRecv (golint)
    • Line 289: warning: don't use underscores in Go names; func value_TrySend should be valueTrySend (golint)
    • Line 293: warning: don't use underscores in Go names; func value_Type should be valueType (golint)
    • Line 297: warning: don't use underscores in Go names; func value_Uint should be valueUint (golint)
    • Line 301: warning: don't use underscores in Go names; func value_UnsafeAddr should be valueUnsafeAddr (golint)
    • go-reflect/reflect.go
    • Line 42: warning: exported const Invalid should have comment (or a comment on this block) or be unexported (golint)
    • Line 73: warning: exported const SelectSend should have comment (or a comment on this block) or be unexported (golint)
    • Line 92: warning: exported const RecvDir should have comment (or a comment on this block) or be unexported (golint)
    • Line 145: warning: exported type SelectDir should have comment or be unexported (golint)
    • Line 393: warning: exported function Swapper should have comment or be unexported (golint)
    • go-reflect/type.go
    • Line 5: warning: a blank import should be only in a main or test package, or have a comment justifying it (golint)
    • Line 42: warning: don't use underscores in Go names; func type_Align should be typeAlign (golint)
    • Line 46: warning: don't use underscores in Go names; func type_FieldAlign should be typeFieldAlign (golint)
    • Line 50: warning: don't use underscores in Go names; func type_Method should be typeMethod (golint)
    • Line 54: warning: don't use underscores in Go names; func type_MethodByName should be typeMethodByName (golint)
    • Line 58: warning: don't use underscores in Go names; func type_NumMethod should be typeNumMethod (golint)
    • Line 62: warning: don't use underscores in Go names; func type_Name should be typeName (golint)
    • Line 66: warning: don't use underscores in Go names; func type_PkgPath should be typePkgPath (golint)
    • Line 70: warning: don't use underscores in Go names; func type_Size should be typeSize (golint)
    • Line 74: warning: don't use underscores in Go names; func type_String should be typeString (golint)
    • Line 78: warning: don't use underscores in Go names; func type_Kind should be typeKind (golint)
    • Line 82: warning: don't use underscores in Go names; func type_Implements should be typeImplements (golint)
    • Line 86: warning: don't use underscores in Go names; func type_AssignableTo should be typeAssignableTo (golint)
    • Line 90: warning: don't use underscores in Go names; func type_ConvertibleTo should be typeConvertibleTo (golint)
    • Line 94: warning: don't use underscores in Go names; func type_Comparable should be typeComparable (golint)
    • Line 98: warning: don't use underscores in Go names; func type_Bits should be typeBits (golint)
    • Line 102: warning: don't use underscores in Go names; func type_ChanDir should be typeChanDir (golint)
    • Line 106: warning: don't use underscores in Go names; func type_IsVariadic should be typeIsVariadic (golint)
    • Line 110: warning: don't use underscores in Go names; func type_Elem should be typeElem (golint)
    • Line 114: warning: don't use underscores in Go names; func type_Field should be typeField (golint)
    • Line 118: warning: don't use underscores in Go names; func type_FieldByIndex should be typeFieldByIndex (golint)
    • Line 122: warning: don't use underscores in Go names; func type_FieldByName should be typeFieldByName (golint)
    • Line 126: warning: don't use underscores in Go names; func type_FieldByNameFunc should be typeFieldByNameFunc (golint)
    • Line 130: warning: don't use underscores in Go names; func type_In should be typeIn (golint)
    • Line 134: warning: don't use underscores in Go names; func type_Key should be typeKey (golint)
    • Line 138: warning: don't use underscores in Go names; func type_Len should be typeLen (golint)
    • Line 142: warning: don't use underscores in Go names; func type_NumField should be typeNumField (golint)
    • Line 146: warning: don't use underscores in Go names; func type_NumIn should be typeNumIn (golint)
    • Line 150: warning: don't use underscores in Go names; func type_NumOut should be typeNumOut (golint)
    • Line 154: warning: don't use underscores in Go names; func type_Out should be typeOut (golint)
    • Line 158: warning: don't use underscores in Go names; func type_toType should be typeToType (golint)

license100%

Checks whether your project has a LICENSE file.

No problems detected. Good job!


ineffassign100%

IneffAssign detects ineffectual assignments in Go code.

No problems detected. Good job!


misspell100%

Misspell Finds commonly misspelled English words

No problems detected. Good job!