yara-x-parser 1.6.0

A parsing library for YARA rules.
Documentation
Begin { kind: SOURCE_FILE, span: Span(0..97) }
Begin { kind: RULE_DECL, span: Span(0..97) }
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: ERROR, span: Span(14..49) }
Token { kind: META_KW, span: Span(14..18) }
Token { kind: COLON, span: Span(18..19) }
Token { kind: NEWLINE, span: Span(19..20) }
Token { kind: WHITESPACE, span: Span(20..24) }
Begin { kind: ERROR, span: Span(24..29) }
Token { kind: IDENT, span: Span(24..27) }
Token { kind: WHITESPACE, span: Span(27..28) }
Token { kind: EQUAL, span: Span(28..29) }
End { kind: ERROR, span: Span(24..29) }
Token { kind: WHITESPACE, span: Span(29..30) }
Error { message: "expecting `-`, INTEGER, FLOAT, STRING, `true` or `false`, found `bar`", span: Span(30..33) }
Token { kind: IDENT, span: Span(30..33) }
Token { kind: NEWLINE, span: Span(33..34) }
Token { kind: WHITESPACE, span: Span(34..38) }
Token { kind: IDENT, span: Span(38..41) }
Token { kind: WHITESPACE, span: Span(41..42) }
Token { kind: EQUAL, span: Span(42..43) }
Token { kind: WHITESPACE, span: Span(43..44) }
Token { kind: STRING_LIT, span: Span(44..49) }
End { kind: ERROR, span: Span(14..49) }
Token { kind: NEWLINE, span: Span(49..50) }
Token { kind: WHITESPACE, span: Span(50..52) }
Begin { kind: PATTERNS_BLK, span: Span(52..74) }
Token { kind: STRINGS_KW, span: Span(52..59) }
Token { kind: COLON, span: Span(59..60) }
Token { kind: NEWLINE, span: Span(60..61) }
Token { kind: WHITESPACE, span: Span(61..64) }
Begin { kind: PATTERN_DEF, span: Span(64..74) }
Token { kind: PATTERN_IDENT, span: Span(64..66) }
Token { kind: WHITESPACE, span: Span(66..67) }
Token { kind: EQUAL, span: Span(67..68) }
Token { kind: WHITESPACE, span: Span(68..69) }
Token { kind: STRING_LIT, span: Span(69..74) }
End { kind: PATTERN_DEF, span: Span(64..74) }
End { kind: PATTERNS_BLK, span: Span(52..74) }
Token { kind: NEWLINE, span: Span(74..75) }
Token { kind: WHITESPACE, span: Span(75..77) }
Begin { kind: CONDITION_BLK, span: Span(77..95) }
Token { kind: CONDITION_KW, span: Span(77..86) }
Token { kind: COLON, span: Span(86..87) }
Token { kind: NEWLINE, span: Span(87..88) }
Token { kind: WHITESPACE, span: Span(88..91) }
Begin { kind: BOOLEAN_EXPR, span: Span(91..95) }
Begin { kind: BOOLEAN_TERM, span: Span(91..95) }
Token { kind: TRUE_KW, span: Span(91..95) }
End { kind: BOOLEAN_TERM, span: Span(91..95) }
End { kind: BOOLEAN_EXPR, span: Span(91..95) }
End { kind: CONDITION_BLK, span: Span(77..95) }
Token { kind: NEWLINE, span: Span(95..96) }
Token { kind: R_BRACE, span: Span(96..97) }
End { kind: RULE_DECL, span: Span(0..97) }
End { kind: SOURCE_FILE, span: Span(0..97) }