Builder
Defines a structure that is operable as a 1-to-n-layer Bloom filter. NIST (the National Institute of Standards and
Technology) defines a *"Bloom filter"* as a "data structure with a probabilistic algorithm to quickly test membership
in a large set using multiple hash functions into a single array of bits."
In essence, a Bloom filter is a very compact set of data, which operates kind of like a cheese cloth. For each unique
data fingerprint applied to the filter, you can imagine throwing colored die at the cheese cloth - what you end up
with is some blend of colors, which is entirely unique and ephemeral, having been constituted entirely by the colors
you chose, and the exact parameters of how you threw them. Albeit a contrived example, one could then imagine simply
examining the result of your work to determine the presence of different colors.
Bloom filters work the same way. Since their invention in by Burton Howard Bloom in 1970, many exotic forms of Bloom
filters have shown up, a few of which this structure supports. For example, one may choose to enhance regular filters
with the count of items considered in the filter, making it a *Counting Bloom filter*. Or, one may choose to combine
multiple filters into one effective filter, which is referred to as a *Layered Bloom filter*.
Content copied to clipboard
elide.structs.BloomFilter
Functions
Link copied to clipboard
Specifies each layer of this Bloom filter structure. If no more than one layer is present, the structure represents
a simple, single-layer regular Bloom filter. If more than one layer are present, the structure represents a multi-
layer (*Layered*) Bloom filter.
Content copied to clipboard
repeated .elide.structs.BloomFilter.FilterLayer layer = 5;
Link copied to clipboard
open fun addLayer(index: Int, builderForValue: BloomFilter.FilterLayer.Builder): BloomFilter.Builder
Specifies each layer of this Bloom filter structure. If no more than one layer is present, the structure represents
a simple, single-layer regular Bloom filter. If more than one layer are present, the structure represents a multi-
layer (*Layered*) Bloom filter.
Content copied to clipboard
repeated .elide.structs.BloomFilter.FilterLayer layer = 5;
Link copied to clipboard
Specifies each layer of this Bloom filter structure. If no more than one layer is present, the structure represents
a simple, single-layer regular Bloom filter. If more than one layer are present, the structure represents a multi-
layer (*Layered*) Bloom filter.
Content copied to clipboard
repeated .elide.structs.BloomFilter.FilterLayer layer = 5;
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Hash algorithm in use for this Bloom filter. This must be considered an immutable value for a constituted filter,
otherwise the underlying data may be rendered unusable.
Content copied to clipboard
.elide.std.HashAlgorithm algorithm = 1;
Link copied to clipboard
Number of items in the filter, across all layers.
Content copied to clipboard
uint64 count = 3;
Link copied to clipboard
Link copied to clipboard
Specifies each layer of this Bloom filter structure. If no more than one layer is present, the structure represents
a simple, single-layer regular Bloom filter. If more than one layer are present, the structure represents a multi-
layer (*Layered*) Bloom filter.
Content copied to clipboard
repeated .elide.structs.BloomFilter.FilterLayer layer = 5;
Link copied to clipboard
Limit setting to enforce for this Bloom filter, before re-calculating contents. Optional.
Content copied to clipboard
uint64 limit = 4;
Link copied to clipboard
Link copied to clipboard
Number of hash rounds to apply when adding data to this filter.
Content copied to clipboard
uint32 rounds = 2;
Link copied to clipboard
Link copied to clipboard
Hash algorithm in use for this Bloom filter. This must be considered an immutable value for a constituted filter,
otherwise the underlying data may be rendered unusable.
Content copied to clipboard
.elide.std.HashAlgorithm algorithm = 1;
Link copied to clipboard
Hash algorithm in use for this Bloom filter. This must be considered an immutable value for a constituted filter,
otherwise the underlying data may be rendered unusable.
Content copied to clipboard
.elide.std.HashAlgorithm algorithm = 1;
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Specifies each layer of this Bloom filter structure. If no more than one layer is present, the structure represents
a simple, single-layer regular Bloom filter. If more than one layer are present, the structure represents a multi-
layer (*Layered*) Bloom filter.
Content copied to clipboard
repeated .elide.structs.BloomFilter.FilterLayer layer = 5;
Link copied to clipboard
Specifies each layer of this Bloom filter structure. If no more than one layer is present, the structure represents
a simple, single-layer regular Bloom filter. If more than one layer are present, the structure represents a multi-
layer (*Layered*) Bloom filter.
Content copied to clipboard
repeated .elide.structs.BloomFilter.FilterLayer layer = 5;
Link copied to clipboard
Specifies each layer of this Bloom filter structure. If no more than one layer is present, the structure represents
a simple, single-layer regular Bloom filter. If more than one layer are present, the structure represents a multi-
layer (*Layered*) Bloom filter.
Content copied to clipboard
repeated .elide.structs.BloomFilter.FilterLayer layer = 5;
Link copied to clipboard
Specifies each layer of this Bloom filter structure. If no more than one layer is present, the structure represents
a simple, single-layer regular Bloom filter. If more than one layer are present, the structure represents a multi-
layer (*Layered*) Bloom filter.
Content copied to clipboard
repeated .elide.structs.BloomFilter.FilterLayer layer = 5;
Link copied to clipboard
Specifies each layer of this Bloom filter structure. If no more than one layer is present, the structure represents
a simple, single-layer regular Bloom filter. If more than one layer are present, the structure represents a multi-
layer (*Layered*) Bloom filter.
Content copied to clipboard
repeated .elide.structs.BloomFilter.FilterLayer layer = 5;
Link copied to clipboard
Specifies each layer of this Bloom filter structure. If no more than one layer is present, the structure represents
a simple, single-layer regular Bloom filter. If more than one layer are present, the structure represents a multi-
layer (*Layered*) Bloom filter.
Content copied to clipboard
repeated .elide.structs.BloomFilter.FilterLayer layer = 5;
Link copied to clipboard
Specifies each layer of this Bloom filter structure. If no more than one layer is present, the structure represents
a simple, single-layer regular Bloom filter. If more than one layer are present, the structure represents a multi-
layer (*Layered*) Bloom filter.
Content copied to clipboard
repeated .elide.structs.BloomFilter.FilterLayer layer = 5;
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
open fun mergeFrom(input: CodedInputStream, extensionRegistry: ExtensionRegistryLite): BloomFilter.Builder
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Specifies each layer of this Bloom filter structure. If no more than one layer is present, the structure represents
a simple, single-layer regular Bloom filter. If more than one layer are present, the structure represents a multi-
layer (*Layered*) Bloom filter.
Content copied to clipboard
repeated .elide.structs.BloomFilter.FilterLayer layer = 5;
Link copied to clipboard
Hash algorithm in use for this Bloom filter. This must be considered an immutable value for a constituted filter,
otherwise the underlying data may be rendered unusable.
Content copied to clipboard
.elide.std.HashAlgorithm algorithm = 1;
Link copied to clipboard
Hash algorithm in use for this Bloom filter. This must be considered an immutable value for a constituted filter,
otherwise the underlying data may be rendered unusable.
Content copied to clipboard
.elide.std.HashAlgorithm algorithm = 1;
Link copied to clipboard
Number of items in the filter, across all layers.
Content copied to clipboard
uint64 count = 3;
Link copied to clipboard
open fun setLayer(index: Int, builderForValue: BloomFilter.FilterLayer.Builder): BloomFilter.Builder
Specifies each layer of this Bloom filter structure. If no more than one layer is present, the structure represents
a simple, single-layer regular Bloom filter. If more than one layer are present, the structure represents a multi-
layer (*Layered*) Bloom filter.
Content copied to clipboard
repeated .elide.structs.BloomFilter.FilterLayer layer = 5;
Link copied to clipboard
Limit setting to enforce for this Bloom filter, before re-calculating contents. Optional.
Content copied to clipboard
uint64 limit = 4;
Link copied to clipboard
abstract fun setRepeatedField(field: Descriptors.FieldDescriptor, index: Int, value: Any): Message.Builder
Link copied to clipboard
Number of hash rounds to apply when adding data to this filter.
Content copied to clipboard
uint32 rounds = 2;
Link copied to clipboard