Skip to main content

compile

Function compile 

Source
pub fn compile(
    source: &str,
    config: &ParserConfig,
) -> Result<CompiledFilter, CompileError>
Expand description

Compile a filter expression string into a CompiledFilter.

§Arguments

  • source - The filter expression string
  • config - Parser configuration with field mappings

§Returns

A CompiledFilter ready for evaluation.

§Example

use bytecode_filter::{compile, ParserConfig};
use bytes::Bytes;

let mut config = ParserConfig::default();
config.add_field("STATUS", 0);
config.add_field("CODE", 1);
let filter = compile(r#"STATUS == "ok""#, &config).unwrap();

let record = Bytes::from("ok;;;200");
assert!(filter.evaluate(record));

§Errors

Returns CompileError if parsing or compilation fails.