yara-x-parser 1.9.0

A parsing library for YARA rules.
Documentation
Begin { kind: SOURCE_FILE, span: Span(0..118) }
Begin { kind: RULE_DECL, span: Span(0..58) }
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..13) }
Begin { kind: ERROR, span: Span(13..35) }
Token { kind: STRINGS_KW, span: Span(13..20) }
Token { kind: COLON, span: Span(20..21) }
Token { kind: NEWLINE, span: Span(21..22) }
Token { kind: WHITESPACE, span: Span(22..25) }
Begin { kind: ERROR, span: Span(25..29) }
Token { kind: PATTERN_IDENT, span: Span(25..27) }
Token { kind: WHITESPACE, span: Span(27..28) }
Token { kind: EQUAL, span: Span(28..29) }
End { kind: ERROR, span: Span(25..29) }
Token { kind: WHITESPACE, span: Span(29..30) }
Error { message: "expecting `[`, BYTE, `(` or `}`, found `0`", span: Span(33..34) }
Token { kind: L_BRACE, span: Span(30..31) }
Token { kind: HEX_BYTE, span: Span(31..33) }
Token { kind: INTEGER_LIT, span: Span(33..34) }
Token { kind: R_BRACE, span: Span(34..35) }
End { kind: ERROR, span: Span(13..35) }
Token { kind: NEWLINE, span: Span(35..36) }
Token { kind: WHITESPACE, span: Span(36..38) }
Begin { kind: CONDITION_BLK, span: Span(38..56) }
Token { kind: CONDITION_KW, span: Span(38..47) }
Token { kind: COLON, span: Span(47..48) }
Token { kind: NEWLINE, span: Span(48..49) }
Token { kind: WHITESPACE, span: Span(49..52) }
Begin { kind: BOOLEAN_EXPR, span: Span(52..56) }
Begin { kind: BOOLEAN_TERM, span: Span(52..56) }
Token { kind: TRUE_KW, span: Span(52..56) }
End { kind: BOOLEAN_TERM, span: Span(52..56) }
End { kind: BOOLEAN_EXPR, span: Span(52..56) }
End { kind: CONDITION_BLK, span: Span(38..56) }
Token { kind: NEWLINE, span: Span(56..57) }
Token { kind: R_BRACE, span: Span(57..58) }
End { kind: RULE_DECL, span: Span(0..58) }
Token { kind: NEWLINE, span: Span(58..59) }
Token { kind: NEWLINE, span: Span(59..60) }
Begin { kind: RULE_DECL, span: Span(60..118) }
Token { kind: RULE_KW, span: Span(60..64) }
Token { kind: WHITESPACE, span: Span(64..65) }
Token { kind: IDENT, span: Span(65..69) }
Token { kind: WHITESPACE, span: Span(69..70) }
Token { kind: L_BRACE, span: Span(70..71) }
Token { kind: NEWLINE, span: Span(71..72) }
Token { kind: WHITESPACE, span: Span(72..73) }
Begin { kind: ERROR, span: Span(73..95) }
Token { kind: STRINGS_KW, span: Span(73..80) }
Token { kind: COLON, span: Span(80..81) }
Token { kind: NEWLINE, span: Span(81..82) }
Token { kind: WHITESPACE, span: Span(82..85) }
Begin { kind: ERROR, span: Span(85..89) }
Token { kind: PATTERN_IDENT, span: Span(85..87) }
Token { kind: WHITESPACE, span: Span(87..88) }
Token { kind: EQUAL, span: Span(88..89) }
End { kind: ERROR, span: Span(85..89) }
Token { kind: WHITESPACE, span: Span(89..90) }
Error { message: "expecting `[`, BYTE, `(` or `}`, found `a`", span: Span(93..94) }
Token { kind: L_BRACE, span: Span(90..91) }
Token { kind: HEX_BYTE, span: Span(91..93) }
Token { kind: IDENT, span: Span(93..94) }
Token { kind: R_BRACE, span: Span(94..95) }
End { kind: ERROR, span: Span(73..95) }
Token { kind: NEWLINE, span: Span(95..96) }
Token { kind: WHITESPACE, span: Span(96..98) }
Begin { kind: CONDITION_BLK, span: Span(98..116) }
Token { kind: CONDITION_KW, span: Span(98..107) }
Token { kind: COLON, span: Span(107..108) }
Token { kind: NEWLINE, span: Span(108..109) }
Token { kind: WHITESPACE, span: Span(109..112) }
Begin { kind: BOOLEAN_EXPR, span: Span(112..116) }
Begin { kind: BOOLEAN_TERM, span: Span(112..116) }
Token { kind: TRUE_KW, span: Span(112..116) }
End { kind: BOOLEAN_TERM, span: Span(112..116) }
End { kind: BOOLEAN_EXPR, span: Span(112..116) }
End { kind: CONDITION_BLK, span: Span(98..116) }
Token { kind: NEWLINE, span: Span(116..117) }
Token { kind: R_BRACE, span: Span(117..118) }
End { kind: RULE_DECL, span: Span(60..118) }
End { kind: SOURCE_FILE, span: Span(0..118) }