Skip to content

Commit

Permalink
Merge pull request #175 from bits-and-blooms/issue174
Browse files Browse the repository at this point in the history
issue 174
  • Loading branch information
lemire authored Oct 8, 2024
2 parents 5e0bcef + 2ba49f6 commit 5f9e437
Showing 1 changed file with 11 additions and 3 deletions.
14 changes: 11 additions & 3 deletions bitset.go
Original file line number Diff line number Diff line change
Expand Up @@ -106,9 +106,17 @@ func From(buf []uint64) *BitSet {
return FromWithLength(uint(len(buf))*64, buf)
}

// FromWithLength constructs from an array of words and length.
func FromWithLength(len uint, set []uint64) *BitSet {
return &BitSet{len, set}
// FromWithLength constructs from an array of words and length in bits.
// This function is for advanced users, most users should prefer
// the From function.
// As a user of FromWithLength, you are responsible for ensuring
// that the length is correct: your slice should have length at
// least (length+63)/64 in 64-bit words.
func FromWithLength(length uint, set []uint64) *BitSet {
if len(set) < wordsNeeded(length) {
panic("BitSet.FromWithLength: slice is too short")
}
return &BitSet{length, set}
}

// Bytes returns the bitset as array of 64-bit words, giving direct access to the internal representation.
Expand Down

0 comments on commit 5f9e437

Please sign in to comment.