yara-x-parser 1.13.0

A parsing library for YARA rules.
Documentation
Begin { kind: SOURCE_FILE, span: Span(0..89) }
Begin { kind: RULE_DECL, span: Span(0..89) }
Token { kind: RULE_KW, span: Span(0..4) }
Token { kind: WHITESPACE, span: Span(4..5) }
Token { kind: IDENT, span: Span(5..9) }
Token { kind: WHITESPACE, span: Span(9..10) }
Token { kind: L_BRACE, span: Span(10..11) }
Token { kind: NEWLINE, span: Span(11..12) }
Token { kind: WHITESPACE, span: Span(12..14) }
Begin { kind: PATTERNS_BLK, span: Span(14..37) }
Token { kind: STRINGS_KW, span: Span(14..21) }
Token { kind: COLON, span: Span(21..22) }
Token { kind: NEWLINE, span: Span(22..23) }
Token { kind: WHITESPACE, span: Span(23..27) }
Begin { kind: PATTERN_DEF, span: Span(27..37) }
Token { kind: PATTERN_IDENT, span: Span(27..29) }
Token { kind: WHITESPACE, span: Span(29..30) }
Token { kind: EQUAL, span: Span(30..31) }
Token { kind: WHITESPACE, span: Span(31..32) }
Token { kind: STRING_LIT, span: Span(32..37) }
End { kind: PATTERN_DEF, span: Span(27..37) }
End { kind: PATTERNS_BLK, span: Span(14..37) }
Token { kind: NEWLINE, span: Span(37..38) }
Token { kind: WHITESPACE, span: Span(38..42) }
Begin { kind: ERROR, span: Span(42..65) }
Token { kind: PATTERN_IDENT, span: Span(42..44) }
Token { kind: WHITESPACE, span: Span(44..45) }
Token { kind: EQUAL, span: Span(45..46) }
Token { kind: WHITESPACE, span: Span(46..47) }
Token { kind: IDENT, span: Span(47..50) }
Token { kind: NEWLINE, span: Span(50..51) }
Token { kind: WHITESPACE, span: Span(51..55) }
Token { kind: PATTERN_IDENT, span: Span(55..57) }
Token { kind: WHITESPACE, span: Span(57..58) }
Token { kind: EQUAL, span: Span(58..59) }
Token { kind: WHITESPACE, span: Span(59..60) }
Token { kind: STRING_LIT, span: Span(60..65) }
End { kind: ERROR, span: Span(42..65) }
Token { kind: NEWLINE, span: Span(65..66) }
Token { kind: WHITESPACE, span: Span(66..68) }
Begin { kind: CONDITION_BLK, span: Span(68..87) }
Token { kind: CONDITION_KW, span: Span(68..77) }
Error { message: "expecting STRING, regexp or `{`, found `bar`", span: Span(47..50) }
Token { kind: COLON, span: Span(77..78) }
Token { kind: NEWLINE, span: Span(78..79) }
Token { kind: WHITESPACE, span: Span(79..83) }
Begin { kind: BOOLEAN_EXPR, span: Span(83..87) }
Begin { kind: BOOLEAN_TERM, span: Span(83..87) }
Token { kind: TRUE_KW, span: Span(83..87) }
End { kind: BOOLEAN_TERM, span: Span(83..87) }
End { kind: BOOLEAN_EXPR, span: Span(83..87) }
End { kind: CONDITION_BLK, span: Span(68..87) }
Token { kind: NEWLINE, span: Span(87..88) }
Token { kind: R_BRACE, span: Span(88..89) }
End { kind: RULE_DECL, span: Span(0..89) }
End { kind: SOURCE_FILE, span: Span(0..89) }