diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 00:47:55 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 00:47:55 +0000 |
commit | 26a029d407be480d791972afb5975cf62c9360a6 (patch) | |
tree | f435a8308119effd964b339f76abb83a57c29483 /toolkit/components/cascade_bloom_filter/nsICascadeFilter.idl | |
parent | Initial commit. (diff) | |
download | firefox-26a029d407be480d791972afb5975cf62c9360a6.tar.xz firefox-26a029d407be480d791972afb5975cf62c9360a6.zip |
Adding upstream version 124.0.1.upstream/124.0.1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'toolkit/components/cascade_bloom_filter/nsICascadeFilter.idl')
-rw-r--r-- | toolkit/components/cascade_bloom_filter/nsICascadeFilter.idl | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/toolkit/components/cascade_bloom_filter/nsICascadeFilter.idl b/toolkit/components/cascade_bloom_filter/nsICascadeFilter.idl new file mode 100644 index 0000000000..2f6dc37f90 --- /dev/null +++ b/toolkit/components/cascade_bloom_filter/nsICascadeFilter.idl @@ -0,0 +1,28 @@ +/* This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ + +#include "nsISupports.idl" + +/** + * A consumer of a filter cascade, i.e. a cascaded bloom filter as generated by + * https://github.com/mozilla/filter-cascade + */ +[scriptable, uuid(c8d0b0b3-17f8-458b-9264-7b67b288fe79)] +interface nsICascadeFilter : nsISupports { + /** + * Initialize with the data that represents the filter cascade. + * This method can be called repeatedly. + * + * @throws NS_ERROR_INVALID_ARG if the input is malformed. + */ + void setFilterData(in Array<octet> data); + + /** + * Check whether a given key is a member of the filter cascade. + * The result can only be relied upon if the key was known at the time of the + * filter generation. If the key is unknown, the method may incorrectly + * return true (due to the probabilistic nature of bloom filters). + */ + boolean has(in ACString key); +}; |