rule-statistics
Analyze a rule's complexity, dependencies, recursion, and usage statistics to identify bottlenecks and refactoring priorities.
Instructions
Analyze rule complexity, dependencies, and performance characteristics.
When to use: Understand rule complexity, identify bottlenecks, find heavily-used rules, plan refactoring.
Example usage: rule_name: "expression"
Returns:
Rule definition and type
Complexity metrics: number of alternatives
Fan-out: rules that this rule references (dependencies)
Fan-in: rules that reference this rule (dependents)
Recursion analysis: direct/indirect recursion detection
Usage statistics
Use cases:
Identify complex rules for optimization
Find highly-coupled rules
Detect recursion issues
Plan refactoring priorities
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| from_file | No | Optional: path to a grammar file to read | |
| rule_name | Yes | The name of the rule to analyze (case-sensitive) | |
| grammar_content | No | The ANTLR4 grammar file content |