Preparing report...

Report for github.com/maksimru/go-hpds

A+    Excellent!    Found 11 issues across 23 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!


golint52%

Golint is a linter for Go source code.

    • go-hpds/utils/arraylist/arraylist.go
    • Line 3: warning: exported type ArrayList should have comment or be unexported (golint)
    • Line 14: warning: exported type AbstractArrayList should have comment or be unexported (golint)
    • Line 18: warning: exported method AbstractArrayList.Swap should have comment or be unexported (golint)
    • Line 24: warning: exported type IntArrayList should have comment or be unexported (golint)
    • Line 29: warning: exported function NewIntArrayList should have comment or be unexported (golint)
    • Line 35: warning: exported method IntArrayList.Get should have comment or be unexported (golint)
    • Line 39: warning: exported method IntArrayList.Set should have comment or be unexported (golint)
    • Line 43: warning: exported method IntArrayList.RemoveLast should have comment or be unexported (golint)
    • Line 49: warning: exported method IntArrayList.Add should have comment or be unexported (golint)
    • Line 53: warning: exported method IntArrayList.GetLength should have comment or be unexported (golint)
    • Line 57: warning: exported method IntArrayList.Clean should have comment or be unexported (golint)
    • Line 61: warning: exported type Float32ArrayList should have comment or be unexported (golint)
    • Line 66: warning: exported function NewFloat32ArrayList should have comment or be unexported (golint)
    • Line 72: warning: exported method Float32ArrayList.Get should have comment or be unexported (golint)
    • Line 76: warning: exported method Float32ArrayList.Set should have comment or be unexported (golint)
    • Line 80: warning: exported method Float32ArrayList.RemoveLast should have comment or be unexported (golint)
    • Line 86: warning: exported method Float32ArrayList.Add should have comment or be unexported (golint)
    • Line 90: warning: exported method Float32ArrayList.GetLength should have comment or be unexported (golint)
    • Line 94: warning: exported method Float32ArrayList.Clean should have comment or be unexported (golint)
    • Line 98: warning: exported type Float64ArrayList should have comment or be unexported (golint)
    • Line 103: warning: exported function NewFloat64ArrayList should have comment or be unexported (golint)
    • Line 109: warning: exported method Float64ArrayList.Get should have comment or be unexported (golint)
    • Line 113: warning: exported method Float64ArrayList.Set should have comment or be unexported (golint)
    • Line 117: warning: exported method Float64ArrayList.RemoveLast should have comment or be unexported (golint)
    • Line 123: warning: exported method Float64ArrayList.Add should have comment or be unexported (golint)
    • Line 127: warning: exported method Float64ArrayList.GetLength should have comment or be unexported (golint)
    • Line 131: warning: exported method Float64ArrayList.Clean should have comment or be unexported (golint)
    • Line 135: warning: exported type StringArrayList should have comment or be unexported (golint)
    • Line 140: warning: exported function NewStringArrayList should have comment or be unexported (golint)
    • Line 146: warning: exported method StringArrayList.Get should have comment or be unexported (golint)
    • Line 150: warning: exported method StringArrayList.Set should have comment or be unexported (golint)
    • Line 154: warning: exported method StringArrayList.RemoveLast should have comment or be unexported (golint)
    • Line 160: warning: exported method StringArrayList.Add should have comment or be unexported (golint)
    • Line 164: warning: exported method StringArrayList.GetLength should have comment or be unexported (golint)
    • Line 168: warning: exported method StringArrayList.Clean should have comment or be unexported (golint)
    • go-hpds/stack/stack.go
    • Line 5: warning: exported type Stack should have comment or be unexported (golint)
    • Line 9: warning: exported function NewStack should have comment or be unexported (golint)
    • Line 15: warning: comment on exported method Stack.Push should be of the form "Push ..." (golint)
    • Line 32: warning: comment on exported method Stack.Top should be of the form "Top ..." (golint)
    • Line 42: warning: comment on exported method Stack.Bottom should be of the form "Bottom ..." (golint)
    • Line 52: warning: comment on exported method Stack.IsEmpty should be of the form "IsEmpty ..." (golint)
    • Line 59: warning: comment on exported method Stack.GetLength should be of the form "GetLength ..." (golint)
    • go-hpds/queue/queue.go
    • Line 5: warning: exported type Queue should have comment or be unexported (golint)
    • Line 9: warning: exported function NewQueue should have comment or be unexported (golint)
    • Line 15: warning: comment on exported method Queue.Enqueue should be of the form "Enqueue ..." (golint)
    • Line 22: warning: comment on exported method Queue.Dequeue should be of the form "Dequeue ..." (golint)
    • Line 32: warning: comment on exported method Queue.Top should be of the form "Top ..." (golint)
    • Line 42: warning: comment on exported method Queue.Bottom should be of the form "Bottom ..." (golint)
    • Line 52: warning: comment on exported method Queue.IsEmpty should be of the form "IsEmpty ..." (golint)
    • Line 59: warning: comment on exported method Queue.GetLength should be of the form "GetLength ..." (golint)
    • go-hpds/minheap/minheap.go
    • Line 8: warning: exported type Heap should have comment or be unexported (golint)
    • Line 26: warning: exported type MinHeap should have comment or be unexported (golint)
    • Line 32: warning: comment on exported method MinHeap.IsValid should be of the form "IsValid ..." (golint)
    • Line 44: warning: comment on exported method MinHeap.GetLength should be of the form "GetLength ..." (golint)
    • Line 51: warning: comment on exported function NewMinHeap should be of the form "NewMinHeap ..." (golint)
    • Line 132: warning: comment on exported method MinHeap.Top should be of the form "Top ..." (golint)
    • Line 142: warning: comment on exported method MinHeap.Remove should be of the form "Remove ..." (golint)
    • Line 153: warning: comment on exported method MinHeap.Add should be of the form "Add ..." (golint)
    • Line 162: warning: comment on exported method MinHeap.IsEmpty should be of the form "IsEmpty ..." (golint)
    • Line 169: warning: comment on exported method MinHeap.Clean should be of the form "Clean ..." (golint)
    • go-hpds/maxheap/maxheap.go
    • Line 8: warning: exported type Heap should have comment or be unexported (golint)
    • Line 26: warning: exported type MaxHeap should have comment or be unexported (golint)
    • Line 32: warning: comment on exported method MaxHeap.IsValid should be of the form "IsValid ..." (golint)
    • Line 44: warning: comment on exported method MaxHeap.GetLength should be of the form "GetLength ..." (golint)
    • Line 51: warning: comment on exported function NewMaxHeap should be of the form "NewMaxHeap ..." (golint)
    • Line 132: warning: comment on exported method MaxHeap.Top should be of the form "Top ..." (golint)
    • Line 142: warning: comment on exported method MaxHeap.Remove should be of the form "Remove ..." (golint)
    • Line 153: warning: comment on exported method MaxHeap.Add should be of the form "Add ..." (golint)
    • Line 162: warning: comment on exported method MaxHeap.IsEmpty should be of the form "IsEmpty ..." (golint)
    • Line 169: warning: comment on exported method MaxHeap.Clean should be of the form "Clean ..." (golint)
    • go-hpds/trie/trie.go
    • Line 7: warning: exported type ITrie should have comment or be unexported (golint)
    • Line 15: warning: exported type Trie should have comment or be unexported (golint)
    • Line 19: warning: comment on exported function NewTrie should be of the form "NewTrie ..." (golint)
    • Line 28: warning: comment on exported method Trie.GetRoot should be of the form "GetRoot ..." (golint)
    • Line 66: warning: comment on exported method Trie.SearchPrefix should be of the form "SearchPrefix ..." (golint)
    • Line 81: warning: comment on exported method Trie.ExtractValues should be of the form "ExtractValues ..." (golint)
    • Line 102: warning: comment on exported method Trie.SearchPattern should be of the form "SearchPattern ..." (golint)
    • Line 139: warning: exported type INode should have comment or be unexported (golint)
    • Line 146: warning: exported type Node should have comment or be unexported (golint)
    • Line 153: warning: exported function NewNode should have comment or be unexported (golint)
    • Line 162: warning: comment on exported method Node.GetChar should be of the form "GetChar ..." (golint)
    • Line 169: warning: comment on exported method Node.GetValue should be of the form "GetValue ..." (golint)
    • Line 176: warning: comment on exported method Node.HasTerminator should be of the form "HasTerminator ..." (golint)
    • Line 183: warning: comment on exported method Node.HasChildNodes should be of the form "HasChildNodes ..." (golint)
    • go-hpds/singlylinkedlist/singly.go
    • Line 5: warning: exported type SinglyLinkedList should have comment or be unexported (golint)
    • Line 11: warning: exported function NewSinglyLinkedList should have comment or be unexported (golint)
    • Line 15: warning: comment on exported method SinglyLinkedList.Append should be of the form "Append ..." (golint)
    • Line 44: warning: comment on exported method SinglyLinkedList.Unshift should be of the form "Unshift ..." (golint)
    • Line 54: warning: comment on exported method SinglyLinkedList.GetHead should be of the form "GetHead ..." (golint)
    • Line 61: warning: comment on exported method SinglyLinkedList.GetTail should be of the form "GetTail ..." (golint)
    • Line 68: warning: comment on exported method SinglyLinkedList.GetLength should be of the form "GetLength ..." (golint)
    • Line 126: warning: exported type Node should have comment or be unexported (golint)
    • Line 132: warning: comment on exported function NewNode should be of the form "NewNode ..." (golint)
    • Line 141: warning: comment on exported method Node.GetNext should be of the form "GetNext ..." (golint)
    • Line 148: warning: comment on exported method Node.GetValue should be of the form "GetValue ..." (golint)
    • Line 155: warning: comment on exported method Node.GetList should be of the form "GetList ..." (golint)
    • Line 168: warning: if block ends with a return statement, so drop this else and outdent its block (golint)
    • Line 175: warning: comment on exported method Node.AppendList should be of the form "AppendList ..." (golint)
    • Line 188: warning: comment on exported method Node.ReverseFrom should be of the form "ReverseFrom ..." (golint)
    • go-hpds/unionfind/unionfind.go
    • Line 3: warning: exported type UnionFind should have comment or be unexported (golint)
    • Line 7: warning: exported function NewUnionFind should have comment or be unexported (golint)
    • Line 12: warning: comment on exported method UnionFind.FindInSet should be of the form "FindInSet ..." (golint)
    • Line 31: warning: comment on exported method UnionFind.Has should be of the form "Has ..." (golint)
    • Line 41: warning: comment on exported method UnionFind.Union should be of the form "Union ..." (golint)
    • Line 60: warning: exported type Node should have comment or be unexported (golint)
    • Line 66: warning: exported function NewNode should have comment or be unexported (golint)
    • Line 73: warning: comment on exported method Node.GetRank should be of the form "GetRank ..." (golint)
    • Line 80: warning: comment on exported method Node.GetValue should be of the form "GetValue ..." (golint)
    • go-hpds/utils/comparator/comparator.go
    • Line 3: warning: exported type Comparator should have comment or be unexported (golint)
    • Line 11: warning: exported type AbstractComparator should have comment or be unexported (golint)
    • Line 13: warning: exported method AbstractComparator.Greater should have comment or be unexported (golint)
    • Line 17: warning: exported method AbstractComparator.LessOrEqual should have comment or be unexported (golint)
    • Line 21: warning: exported method AbstractComparator.GreaterOrEqual should have comment or be unexported (golint)
    • Line 25: warning: exported type IntComparator should have comment or be unexported (golint)
    • Line 27: warning: exported function NewIntComparator should have comment or be unexported (golint)
    • Line 33: warning: exported method IntComparator.Less should have comment or be unexported (golint)
    • Line 37: warning: exported method IntComparator.Equal should have comment or be unexported (golint)
    • Line 41: warning: exported type Float32Comparator should have comment or be unexported (golint)
    • Line 43: warning: exported function NewFloat32Comparator should have comment or be unexported (golint)
    • Line 49: warning: exported method Float32Comparator.Less should have comment or be unexported (golint)
    • Line 53: warning: exported method Float32Comparator.Equal should have comment or be unexported (golint)
    • Line 57: warning: exported type Float64Comparator should have comment or be unexported (golint)
    • Line 59: warning: exported function NewFloat64Comparator should have comment or be unexported (golint)
    • Line 65: warning: exported method Float64Comparator.Less should have comment or be unexported (golint)
    • Line 69: warning: exported method Float64Comparator.Equal should have comment or be unexported (golint)
    • Line 73: warning: exported type StringComparator should have comment or be unexported (golint)
    • Line 75: warning: exported function NewStringComparator should have comment or be unexported (golint)
    • Line 81: warning: exported method StringComparator.Less should have comment or be unexported (golint)
    • Line 85: warning: exported method StringComparator.Equal should have comment or be unexported (golint)
    • go-hpds/doublylinkedlist/doubly.go
    • Line 5: warning: exported type DoublyLinkedList should have comment or be unexported (golint)
    • Line 11: warning: exported function NewDoublyLinkedList should have comment or be unexported (golint)
    • Line 15: warning: comment on exported method DoublyLinkedList.Append should be of the form "Append ..." (golint)
    • Line 52: warning: comment on exported method DoublyLinkedList.Unshift should be of the form "Unshift ..." (golint)
    • Line 61: warning: comment on exported method DoublyLinkedList.GetHead should be of the form "GetHead ..." (golint)
    • Line 68: warning: comment on exported method DoublyLinkedList.GetTail should be of the form "GetTail ..." (golint)
    • Line 75: warning: comment on exported method DoublyLinkedList.GetLength should be of the form "GetLength ..." (golint)
    • Line 134: warning: exported type Node should have comment or be unexported (golint)
    • Line 141: warning: comment on exported function NewNode should be of the form "NewNode ..." (golint)
    • Line 151: warning: comment on exported method Node.GetNext should be of the form "GetNext ..." (golint)
    • Line 158: warning: comment on exported method Node.GetPrev should be of the form "GetPrev ..." (golint)
    • Line 165: warning: comment on exported method Node.GetValue should be of the form "GetValue ..." (golint)
    • Line 172: warning: comment on exported method Node.GetList should be of the form "GetList ..." (golint)
    • Line 223: warning: comment on exported method Node.AppendList should be of the form "AppendList ..." (golint)
    • Line 236: warning: comment on exported method Node.ReverseFrom should be of the form "ReverseFrom ..." (golint)
    • go-hpds/priorityqueue/priorityqueue.go
    • Line 9: warning: exported type PrioritizedValue should have comment or be unexported (golint)
    • Line 14: warning: exported type IntPrioritizedValue should have comment or be unexported (golint)
    • Line 19: warning: exported function NewIntPrioritizedValue should have comment or be unexported (golint)
    • Line 23: warning: exported method IntPrioritizedValue.GetValue should have comment or be unexported (golint)
    • Line 27: warning: exported method IntPrioritizedValue.GetPriority should have comment or be unexported (golint)
    • Line 31: warning: exported type IntPrioritizedValueList should have comment or be unexported (golint)
    • Line 36: warning: exported function NewIntPrioritizedValueList should have comment or be unexported (golint)
    • Line 42: warning: exported method IntPrioritizedValueList.Get should have comment or be unexported (golint)
    • Line 46: warning: exported method IntPrioritizedValueList.Set should have comment or be unexported (golint)
    • Line 50: warning: exported method IntPrioritizedValueList.GetLength should have comment or be unexported (golint)
    • Line 54: warning: exported method IntPrioritizedValueList.RemoveLast should have comment or be unexported (golint)
    • Line 60: warning: exported method IntPrioritizedValueList.Add should have comment or be unexported (golint)
    • Line 64: warning: exported method IntPrioritizedValueList.Clean should have comment or be unexported (golint)
    • Line 68: warning: exported type IntPriorityComparator should have comment or be unexported (golint)
    • Line 70: warning: exported function NewIntPriorityComparator should have comment or be unexported (golint)
    • Line 76: warning: exported method IntPriorityComparator.Less should have comment or be unexported (golint)
    • Line 80: warning: exported method IntPriorityComparator.Equal should have comment or be unexported (golint)
    • Line 84: warning: exported type Float32PrioritizedValue should have comment or be unexported (golint)
    • Line 89: warning: exported function NewFloat32PrioritizedValue should have comment or be unexported (golint)
    • Line 93: warning: exported method Float32PrioritizedValue.GetValue should have comment or be unexported (golint)
    • Line 97: warning: exported method Float32PrioritizedValue.GetPriority should have comment or be unexported (golint)
    • Line 101: warning: exported type Float32PrioritizedValueList should have comment or be unexported (golint)
    • Line 106: warning: exported function NewFloat32PrioritizedValueList should have comment or be unexported (golint)
    • Line 112: warning: exported method Float32PrioritizedValueList.Get should have comment or be unexported (golint)
    • Line 116: warning: exported method Float32PrioritizedValueList.Set should have comment or be unexported (golint)
    • Line 120: warning: exported method Float32PrioritizedValueList.GetLength should have comment or be unexported (golint)
    • Line 124: warning: exported method Float32PrioritizedValueList.RemoveLast should have comment or be unexported (golint)
    • Line 130: warning: exported method Float32PrioritizedValueList.Add should have comment or be unexported (golint)
    • Line 134: warning: exported method Float32PrioritizedValueList.Clean should have comment or be unexported (golint)
    • Line 138: warning: exported type Float32PriorityComparator should have comment or be unexported (golint)
    • Line 140: warning: exported function NewFloat32PriorityComparator should have comment or be unexported (golint)
    • Line 146: warning: exported method Float32PriorityComparator.Less should have comment or be unexported (golint)
    • Line 150: warning: exported method Float32PriorityComparator.Equal should have comment or be unexported (golint)
    • Line 154: warning: exported type Float64PrioritizedValue should have comment or be unexported (golint)
    • Line 159: warning: exported function NewFloat64PrioritizedValue should have comment or be unexported (golint)
    • Line 163: warning: exported method Float64PrioritizedValue.GetValue should have comment or be unexported (golint)
    • Line 167: warning: exported method Float64PrioritizedValue.GetPriority should have comment or be unexported (golint)
    • Line 171: warning: exported type Float64PrioritizedValueList should have comment or be unexported (golint)
    • Line 176: warning: exported function NewFloat64PrioritizedValueList should have comment or be unexported (golint)
    • Line 182: warning: exported method Float64PrioritizedValueList.Get should have comment or be unexported (golint)
    • Line 186: warning: exported method Float64PrioritizedValueList.Set should have comment or be unexported (golint)
    • Line 190: warning: exported method Float64PrioritizedValueList.GetLength should have comment or be unexported (golint)
    • Line 194: warning: exported method Float64PrioritizedValueList.RemoveLast should have comment or be unexported (golint)
    • Line 200: warning: exported method Float64PrioritizedValueList.Add should have comment or be unexported (golint)
    • Line 204: warning: exported method Float64PrioritizedValueList.Clean should have comment or be unexported (golint)
    • Line 208: warning: exported type Float64PriorityComparator should have comment or be unexported (golint)
    • Line 210: warning: exported function NewFloat64PriorityComparator should have comment or be unexported (golint)
    • Line 216: warning: exported method Float64PriorityComparator.Less should have comment or be unexported (golint)
    • Line 220: warning: exported method Float64PriorityComparator.Equal should have comment or be unexported (golint)
    • Line 224: warning: exported type StringPrioritizedValue should have comment or be unexported (golint)
    • Line 229: warning: exported function NewStringPrioritizedValue should have comment or be unexported (golint)
    • Line 233: warning: exported method StringPrioritizedValue.GetValue should have comment or be unexported (golint)
    • Line 237: warning: exported method StringPrioritizedValue.GetPriority should have comment or be unexported (golint)
    • Line 241: warning: exported type StringPrioritizedValueList should have comment or be unexported (golint)
    • Line 246: warning: exported function NewStringPrioritizedValueList should have comment or be unexported (golint)
    • Line 252: warning: exported method StringPrioritizedValueList.Get should have comment or be unexported (golint)
    • Line 256: warning: exported method StringPrioritizedValueList.Set should have comment or be unexported (golint)
    • Line 260: warning: exported method StringPrioritizedValueList.GetLength should have comment or be unexported (golint)
    • Line 264: warning: exported method StringPrioritizedValueList.RemoveLast should have comment or be unexported (golint)
    • Line 270: warning: exported method StringPrioritizedValueList.Add should have comment or be unexported (golint)
    • Line 274: warning: exported method StringPrioritizedValueList.Clean should have comment or be unexported (golint)
    • Line 278: warning: exported type StringPriorityComparator should have comment or be unexported (golint)
    • Line 280: warning: exported function NewStringPriorityComparator should have comment or be unexported (golint)
    • Line 286: warning: exported method StringPriorityComparator.Less should have comment or be unexported (golint)
    • Line 290: warning: exported method StringPriorityComparator.Equal should have comment or be unexported (golint)
    • Line 294: warning: exported type IPriorityQueue should have comment or be unexported (golint)
    • Line 302: warning: exported type PriorityQueue should have comment or be unexported (golint)
    • Line 306: warning: comment on exported function NewPriorityQueue should be of the form "NewPriorityQueue ..." (golint)
    • Line 315: warning: comment on exported method PriorityQueue.Enqueue should be of the form "Enqueue ..." (golint)
    • Line 322: warning: comment on exported method PriorityQueue.Dequeue should be of the form "Dequeue ..." (golint)
    • Line 329: warning: comment on exported method PriorityQueue.Top should be of the form "Top ..." (golint)
    • Line 339: warning: comment on exported method PriorityQueue.GetLength should be of the form "GetLength ..." (golint)
    • Line 346: warning: comment on exported method PriorityQueue.IsEmpty should be of the form "IsEmpty ..." (golint)
    • Line 353: warning: comment on exported method PriorityQueue.Clean should be of the form "Clean ..." (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!