| Access | Constructor and Description |
|---|---|
| public |
| Modifier and Type | Method and Description |
|---|---|
| public void | |
| protected void | |
| protected void | |
| public boolean | checkForLabelTypeMismatch(Rule r, Token label, int type)
If type of previous label differs from new label's type, that's an error. |
| protected void | |
| protected void | |
| public void | checkForRuleScopeAttributeConflict(Rule r, Attribute attribute)
Check for collision of a rule-scope dynamic attribute with: arg, return value, rule name itself. |
| protected void |
| grammar | back to summary |
|---|---|
| protected Grammar grammar | |
| NameSpaceChecker | back to summary |
|---|---|
| public NameSpaceChecker(Grammar grammar) | |
| checkConflicts | back to summary |
|---|---|
| public void checkConflicts() | |
| checkForGlobalScopeTokenConflict | back to summary |
|---|---|
| protected void checkForGlobalScopeTokenConflict(AttributeScope scope) | |
| checkForLabelConflict | back to summary |
|---|---|
| protected void checkForLabelConflict(Rule r, Token label) Make sure a label doesn't conflict with another symbol. Labels must not conflict with: rules, tokens, scope names, return values, parameters, and rule-scope dynamic attributes defined in surrounding rule. | |
| checkForLabelTypeMismatch | back to summary |
|---|---|
| public boolean checkForLabelTypeMismatch(Rule r, Token label, int type) If type of previous label differs from new label's type, that's an error. | |
| checkForRuleArgumentAndReturnValueConflicts | back to summary |
|---|---|
| protected void checkForRuleArgumentAndReturnValueConflicts(Rule r) | |
| checkForRuleDefinitionProblems | back to summary |
|---|---|
| protected void checkForRuleDefinitionProblems(Rule r) | |
| checkForRuleScopeAttributeConflict | back to summary |
|---|---|
| public void checkForRuleScopeAttributeConflict(Rule r, Attribute attribute) Check for collision of a rule-scope dynamic attribute with: arg, return value, rule name itself. Labels are checked elsewhere. | |
| lookForReferencesToUndefinedSymbols | back to summary |
|---|---|
| protected void lookForReferencesToUndefinedSymbols() If ref to undefined rule, give error at first occurrence. Give error if you cannot find the scope override on a rule reference. If you ref ID in a combined grammar and don't define ID as a lexer rule it is an error. | |