| Crates.io | adguard-flm-ffi |
| lib.rs | adguard-flm-ffi |
| version | 2.1.0 |
| created_at | 2024-08-28 14:02:59.463656+00 |
| updated_at | 2025-09-09 15:34:13.57496+00 |
| description | Foreign function interface crate for filter list manager library |
| homepage | https://adguard.com |
| repository | https://github.com/AdguardTeam/FilterListManager |
| max_upload_size | |
| id | 1354689 |
| size | 4,910,876 |
This crate is a set of bindings over filter-list-manager and build configurations for FFI bindings to interface with other programming languages.
FFI transport are implemented as C language interface (outer side) using protocol buffers for serialisation. On rust side (inner side) there is a dispatcher that passes the FFI function call to foreign language.
You may need regenerate protobuf files for rust and flm_native_interface.h header:
cargo run -p ffi-native-assets-generator.
It's better run this operation from the workspace root.
cargo run -p adguard-flm-ffi from workspace root
Look at these symbols for better understanding FFI interface.
You can check rust facade here for library functions signatures.
OuterError - flattened enum from adguard_flm::FLMError.
Source