add-rules
Add multiple mixed parser and lexer rules to an ANTLR4 grammar in a single bulk operation, enabling rapid grammar setup and prototyping with per-rule success reporting.
Instructions
Add multiple mixed parser and lexer rules in a single operation (bulk add).
When to use: Set up complete grammar structure, add both tokens and parsing rules together, or quickly prototype.
Example - Add mixed rules: rules: [ { type: "lexer", name: "PLUS", pattern: "'+'" }, { type: "lexer", name: "MINUS", pattern: "'-'" }, { type: "parser", name: "expression", definition: "term ((PLUS | MINUS) term)*" }, { type: "parser", name: "term", definition: "INT | ID" } ] write_to_file: true
Features:
Handles both lexer and parser rules in one operation
Rules sorted alphabetically within their type category
Duplicate prevention per rule
Partial success: some rules can succeed even if others fail
Per-rule success/failure reporting
Atomic per-rule operations
Returns:
Summary: "Added X rules, Y failed"
Per-rule results with success/failure status
Modified grammar
File write confirmation if applicable
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| rules | Yes | Array of mixed rules to add. Each rule requires type and name. Lexer rules need pattern, parser rules need definition. | |
| from_file | No | Optional: path to a grammar file to read. Required if using write_to_file. | |
| write_to_file | No | If true, writes modified grammar back to from_file (requires from_file to be set) | |
| grammar_content | No | The ANTLR4 grammar file content |