Skip to content

Commit cf3fc1b

Browse files
Merge pull request Workiva#62 from alexandercampbell-wf/update_readme
Update readme
2 parents c399d76 + bdd0b1b commit cf3fc1b

File tree

8 files changed

+29
-24
lines changed

8 files changed

+29
-24
lines changed

README.md

+13-16
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,6 @@ Bitarray used to detect existence without having to resort to hashing with hashm
1414
#### Futures:
1515
A helpful tool to send a "broadcast" message to listeners. Channels have the issue that once one listener takes a message from a channel the other listeners aren't notified. There were many cases when I wanted to notify many listeners of a single event and this package helps.
1616

17-
#### Graph:
18-
Still pretty specific to gotable, but contains logic required to maintain graph state. Also has logic to flatten graph into executable chunks.
19-
2017
#### Queue:
2118
Package contains both a normal and priority queue. Both implementations never block on send and grow as much as necessary. Both also only return errors if you attempt to push to a disposed queue and will not panic like sending a message on a closed channel. The priority queue also allows you to place items in priority order inside the queue. If you give a useful hint to the regular queue, it is actually faster than a channel. The priority queue is somewhat slow currently and targeted for an update to a Fibonacci heap.
2219

@@ -57,20 +54,12 @@ Initial implementation of a B+ tree. Delete method still needs added as well as
5754

5855
### Installation
5956

60-
1) Install Go 1.3 or higher.
61-
62-
2) Configure git to use SSH instead of HTTPS for github repositories. This
63-
allows `go get` to use private repositories.
64-
65-
# ~/.gitconfig
66-
67-
insteadOf = https://github.com
68-
69-
3) go get github.com/Workiva/go-datastructures ...
57+
1. Install Go 1.3 or higher.
58+
2. Run `go get github.com/Workiva/go-datastructures/...`
7059

7160
### Updating
7261

73-
When new code is merged to master, you can use
62+
When new code is merged to master, you can use
7463

7564
go get -u github.com/Workiva/go-datastructures/...
7665

@@ -84,15 +73,23 @@ To run all the unit tests use these commands:
8473
go get -t -u ./...
8574
go test ./...
8675

87-
Once you've done this once, you can simply use
76+
Once you've done this once, you can simply use this command to run all unit tests:
8877

8978
go test ./...
9079

80+
9181
### Notice
9282

9383
Requirements to commit here:
9484

9585
- `gofmt`'d code.
9686
- Compliance with [these guidelines](https://code.google.com/p/go-wiki/wiki/CodeReviewComments)
9787
- Unit test coverage
98-
- [Good commit messages](http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html)
88+
- [Good commit messages](http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html)
89+
90+
91+
### Maintainers
92+
93+
- Dustin Hiatt <[[email protected]](mailto:[email protected])>
94+
- Alexander Campbell <[[email protected]](mailto:[email protected])>
95+

augmentedtree/interface.go

-1
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@ The current tree is a simple top-down red-black binary search tree.
2929
TODO: Add a bottom-up implementation to assist with duplicate
3030
range handling.
3131
*/
32-
3332
package augmentedtree
3433

3534
// Interval is the interface that must be implemented by any

bitarray/interface.go

-1
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@ be done in a single clock cycle (not counting the time it takes to convert)
2222
the resultant array back into integers). When Go implements a command
2323
to get trailing zeroes, the reconversion back into integers should be much faster.
2424
*/
25-
2625
package bitarray
2726

2827
// BitArray represents a structure that can be used to

datastructures.go

+11
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,21 @@ importing this package instead of each subpackage individually.
1010
import (
1111
_ "github.com/Workiva/go-datastructures/augmentedtree"
1212
_ "github.com/Workiva/go-datastructures/bitarray"
13+
_ "github.com/Workiva/go-datastructures/btree/link"
14+
_ "github.com/Workiva/go-datastructures/btree/palm"
15+
_ "github.com/Workiva/go-datastructures/btree/plus"
1316
_ "github.com/Workiva/go-datastructures/futures"
17+
_ "github.com/Workiva/go-datastructures/hashmap/fastinteger"
18+
_ "github.com/Workiva/go-datastructures/numerics/optimization"
1419
_ "github.com/Workiva/go-datastructures/queue"
1520
_ "github.com/Workiva/go-datastructures/rangetree"
21+
_ "github.com/Workiva/go-datastructures/rangetree/skiplist"
1622
_ "github.com/Workiva/go-datastructures/set"
1723
_ "github.com/Workiva/go-datastructures/slice"
24+
_ "github.com/Workiva/go-datastructures/slice/skip"
25+
_ "github.com/Workiva/go-datastructures/sort"
1826
_ "github.com/Workiva/go-datastructures/threadsafe/err"
27+
_ "github.com/Workiva/go-datastructures/tree/avl"
28+
_ "github.com/Workiva/go-datastructures/trie/xfast"
29+
_ "github.com/Workiva/go-datastructures/trie/yfast"
1930
)

hashmap/fastinteger/hashmap.go

-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,6 @@
1818
//
1919
// This performance could be further enhanced by using a
2020
// better probing technique.
21-
2221
package fastinteger
2322

2423
const ratio = .75 // ratio sets the capacity the hashmap has to be at before it expands

rangetree/interface.go

-1
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@ consumer that needs a threadsafe rangetree.
2626
2727
TODO: unify both implementations with the same interface.
2828
*/
29-
3029
package rangetree
3130

3231
// Entry defines items that can be added to the rangetree.

threadsafe/err/error.go

-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ I found myself needing a lock to protect writing to a common error interface
2020
from multiple go routines (channels are great but slow). This just makes
2121
that process more convenient.
2222
*/
23-
2423
package err
2524

2625
import "sync"

tree/avl/avl.go

+5-3
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,11 @@ limitations under the License.
1515
*/
1616

1717
/*
18-
The immutable AVL tree can be used as the foundation for many functional
19-
data types. Combined with a B+ tree, you can make an immutable index which
20-
serves as the backbone for many different kinds of key/value stores.
18+
Package avl includes an immutable AVL tree.
19+
20+
AVL trees can be used as the foundation for many functional data types.
21+
Combined with a B+ tree, you can make an immutable index which serves as the
22+
backbone for many different kinds of key/value stores.
2123
2224
Time complexities:
2325
Space: O(n)

0 commit comments

Comments
 (0)