Skip to main content

RULE_LIMIT

Constant RULE_LIMIT 

Source
pub const RULE_LIMIT: usize = 1024;
Expand description

The deepest rule stack a parse may reach.

NODE_LIMIT bounds an expression that is being BUILT, and an unterminated one builds nothing: (((( with no closer pushes a rule frame per level and never reaches the limit, and the engine’s cost per step grows with the stack, so the parse turned quadratic. The base grammar bounds its own nesting for the same reason, and the deepest document it accepts, 127 nested containers, measures 378 frames, so this one sits well above anything it lets through. Past it a parse is refused with the engine’s cancel code.