Modules§
- flm_
call_ protobuf - A dispatcher module that passes the FFI function call to the right method internally on the Rust side
- manager
- Filter list manager library main facade interface.
- outer_
error - storage
- Root module of data storage operations
Structs§
- Active
Rules Info - Represents list of active (not disabled) rules with extra filter data
- Configuration
- Configuration object
- Disabled
Rules Raw - List of disabled rules separated by line breaks + filter id
- FLMHandle
- Opaque handle for external world
- Filter
Group - FilterListGroup represents a group of filter lists that have similar purpose.
- Filter
List Manager - Filter
List Manager Constants - Structure used for passing constants through FFI
- Filter
List Manager Impl - Default implementation for
FilterListManager
- Filter
List Metadata - Metadata for a remote filter list. This structure represents metadata parsed from
the list content and it is exposed via
fetch_filter_list_metadata
. - Filter
List Metadata With Body - Metadata (with body) for a remote filter list.
- Filter
List Rules - FilterListRules represents filter list rules. Note, that we should store
both the rules and disabled rules. This is required to be able to update the
rules without caring about individual rule status. I.e. if you once
disabled
||example.org^
it should stay disabled even the new version of the list has new lines with the same rule. - Filter
List Rules Raw - This contains
rules
anddisabled_rules
just as strings instead of vectors in the base type. See the [FilterListRules
] for more info. - Filter
Tag - FilterListTag represents a tag of a filter list. A filter list may have multiple tags.
- Full
Filter List - FullFilterList represents a filter list and all its associated metadata.
- Rules
Count ByFilter - List of rules count + filter id
- Rust
Response - Container for rust-formed responses into external world UNSAFE: You must manually control the release of any types folded into the “response”
- Stored
Filter Metadata - The lightweight analog of
crate::FullFilterList
without filter contents - Update
Filter Error - Container for filter updating error
- Update
Result - Filters update result container.
Enums§
- FLMError
- General purpose error enum for all
crate::FilterListManager
methods - Filter
List Type - A filter lists type of current
crate::FilterListManager
instance - Filter
Parser Error - Errors for filter parser module
- Http
Client Error - Common HTTP client errors enum
- IOError
- General I/O Errors enum
- Request
Proxy Mode - Proxy mode of operation for requests
- Rust
Response Type - Discriminant for
RustResponse
result_data value
Constants§
- CUSTOM_
FILTERS_ GROUP_ ID - Group ID for custom filters
- DNS_
FILTERS_ DATABASE_ FILENAME - Database filename for
crate::FilterListType::DNS
- MAXIMUM_
CUSTOM_ FILTER_ ID - Custom filters ids must be in range
- MINIMUM_
CUSTOM_ FILTER_ ID - Custom filters ids must be in range
- SERVICE_
GROUP_ ID - Service group id for special filters
- SMALLEST_
POSSIBLE_ FILTER_ ID - Smallest possible filter id value. -2^53 You can safely occupy any filter with an id lower than this number. The library is guaranteed to never create a filter with this id.
- STANDARD_
FILTERS_ DATABASE_ FILENAME - Database filename for
crate::FilterListType::STANDARD
- USER_
RULES_ FILTER_ LIST_ ID - Filter ID for special filter for user rules
Traits§
- Filter
List Manager - FilterListManager is the interface of a filter list manager.
Functions§
- flm_
default_ configuration_ protobuf - Makes default
Configuration
object as protobuf inRustResponse
- flm_
free_ ⚠handle - Drops
FLMHandle
- flm_
free_ ⚠response - Frees memory of
RustResponse
objects and their data. NOTE: Actions for each discriminant are different. - flm_
get_ constants - Getter for the set of
FilterListManager
constants - flm_
init_ ⚠protobuf - Makes an FLM object and returns opaque pointer of
FLMHandle
- make_
constants_ structure - Create constants structure
- make_
default_ configuration - Default configuration factory