antlr-ng
Version:
Next generation ANTLR Tool
262 lines (261 loc) • 26.2 kB
JavaScript
import { antlrVersion } from "../version.js";
var IssueSeverity = /* @__PURE__ */ ((IssueSeverity2) => {
IssueSeverity2[IssueSeverity2["Info"] = 0] = "Info";
IssueSeverity2[IssueSeverity2["Warning"] = 1] = "Warning";
IssueSeverity2[IssueSeverity2["WarningOneOff"] = 2] = "WarningOneOff";
IssueSeverity2[IssueSeverity2["Error"] = 3] = "Error";
IssueSeverity2[IssueSeverity2["ErrorOneOff"] = 4] = "ErrorOneOff";
IssueSeverity2[IssueSeverity2["Fatal"] = 5] = "Fatal";
return IssueSeverity2;
})(IssueSeverity || {});
const severityMap = /* @__PURE__ */ new Map([
[0 /* Info */, "info"],
[1 /* Warning */, "warning"],
[2 /* WarningOneOff */, "warning"],
[3 /* Error */, "error"],
[4 /* ErrorOneOff */, "error"],
[5 /* Fatal */, "fatal"]
]);
var IssueCode = /* @__PURE__ */ ((IssueCode2) => {
IssueCode2[IssueCode2["NoGrammarsFound"] = 0] = "NoGrammarsFound";
IssueCode2[IssueCode2["CannotWriteFile"] = 1] = "CannotWriteFile";
IssueCode2[IssueCode2["InvalidCmdlineArg"] = 2] = "InvalidCmdlineArg";
IssueCode2[IssueCode2["CannotFindTokensFile"] = 3] = "CannotFindTokensFile";
IssueCode2[IssueCode2["ErrorReadingTokensFile"] = 4] = "ErrorReadingTokensFile";
IssueCode2[IssueCode2["DirNotFound"] = 5] = "DirNotFound";
IssueCode2[IssueCode2["OutputDirIsFIle"] = 6] = "OutputDirIsFIle";
IssueCode2[IssueCode2["CannotOpenFile"] = 7] = "CannotOpenFile";
IssueCode2[IssueCode2["FileAndGrammarNameDiffer"] = 8] = "FileAndGrammarNameDiffer";
IssueCode2[IssueCode2["BadOptionSetSyntax"] = 9] = "BadOptionSetSyntax";
IssueCode2[IssueCode2["WarningTreatedAsErrors"] = 10] = "WarningTreatedAsErrors";
IssueCode2[IssueCode2["ErrorReadingImportedGrammar"] = 11] = "ErrorReadingImportedGrammar";
IssueCode2[IssueCode2["InternalError"] = 12] = "InternalError";
IssueCode2[IssueCode2["TokensFileSyntaxError"] = 13] = "TokensFileSyntaxError";
IssueCode2[IssueCode2["StringTemplateWarning"] = 14] = "StringTemplateWarning";
IssueCode2[IssueCode2["MissingCodeGenTemplates"] = 15] = "MissingCodeGenTemplates";
IssueCode2[IssueCode2["CannotCreateTargetGenerator"] = 16] = "CannotCreateTargetGenerator";
IssueCode2[IssueCode2["CodeTemaplateArgIssue"] = 17] = "CodeTemaplateArgIssue";
IssueCode2[IssueCode2["CodeGenTemplatesIncomplete"] = 18] = "CodeGenTemplatesIncomplete";
IssueCode2[IssueCode2["NoModleToTemplateMapping"] = 19] = "NoModleToTemplateMapping";
IssueCode2[IssueCode2["IncompatibleToolAndTemplates"] = 20] = "IncompatibleToolAndTemplates";
IssueCode2[IssueCode2["SyntaxError"] = 21] = "SyntaxError";
IssueCode2[IssueCode2["RuleRedefinition"] = 22] = "RuleRedefinition";
IssueCode2[IssueCode2["LexerRulesNotAllowed"] = 23] = "LexerRulesNotAllowed";
IssueCode2[IssueCode2["ParserRuleNotAllowed"] = 24] = "ParserRuleNotAllowed";
IssueCode2[IssueCode2["RepeatedPrequel"] = 25] = "RepeatedPrequel";
IssueCode2[IssueCode2["UndefinedRuleRef"] = 26] = "UndefinedRuleRef";
IssueCode2[IssueCode2["UndefinedRuleInNonlocalRef"] = 27] = "UndefinedRuleInNonlocalRef";
IssueCode2[IssueCode2["TokenNamesMustStartUpper"] = 28] = "TokenNamesMustStartUpper";
IssueCode2[IssueCode2["UnknownSimpleAttribute"] = 29] = "UnknownSimpleAttribute";
IssueCode2[IssueCode2["InvalidRuleParameterRef"] = 30] = "InvalidRuleParameterRef";
IssueCode2[IssueCode2["UnknownRuleAttribute"] = 31] = "UnknownRuleAttribute";
IssueCode2[IssueCode2["UnknownAtrributeInScopoe"] = 32] = "UnknownAtrributeInScopoe";
IssueCode2[IssueCode2["IsloatedRuleRef"] = 33] = "IsloatedRuleRef";
IssueCode2[IssueCode2["LabelConflictsWithRule"] = 34] = "LabelConflictsWithRule";
IssueCode2[IssueCode2["LabelConflictsWithToken"] = 35] = "LabelConflictsWithToken";
IssueCode2[IssueCode2["LabelConflictsWithArg"] = 36] = "LabelConflictsWithArg";
IssueCode2[IssueCode2["LabelConflictsWithRetval"] = 37] = "LabelConflictsWithRetval";
IssueCode2[IssueCode2["LabelConflictsWithLocal"] = 38] = "LabelConflictsWithLocal";
IssueCode2[IssueCode2["LabelTypeConflict"] = 39] = "LabelTypeConflict";
IssueCode2[IssueCode2["RetValuConflictsWithArg"] = 40] = "RetValuConflictsWithArg";
IssueCode2[IssueCode2["MissingRuleArgs"] = 41] = "MissingRuleArgs";
IssueCode2[IssueCode2["RuleHasNoArgs"] = 42] = "RuleHasNoArgs";
IssueCode2[IssueCode2["IllegalOption"] = 43] = "IllegalOption";
IssueCode2[IssueCode2["IllegalOptionValue"] = 44] = "IllegalOptionValue";
IssueCode2[IssueCode2["ActionRedefinition"] = 45] = "ActionRedefinition";
IssueCode2[IssueCode2["NoRules"] = 46] = "NoRules";
IssueCode2[IssueCode2["NoSuchGrammarScope"] = 47] = "NoSuchGrammarScope";
IssueCode2[IssueCode2["NoSuchRuleInScope"] = 48] = "NoSuchRuleInScope";
IssueCode2[IssueCode2["TokenNameReassignment"] = 49] = "TokenNameReassignment";
IssueCode2[IssueCode2["OptionsInDelegate"] = 50] = "OptionsInDelegate";
IssueCode2[IssueCode2["CannotFindImportedGrammar"] = 51] = "CannotFindImportedGrammar";
IssueCode2[IssueCode2["InvalidImport"] = 52] = "InvalidImport";
IssueCode2[IssueCode2["ImportNameClash"] = 53] = "ImportNameClash";
IssueCode2[IssueCode2["CannotFindTokensFileRefdInGrammar"] = 54] = "CannotFindTokensFileRefdInGrammar";
IssueCode2[IssueCode2["LeftRecursionCycles"] = 55] = "LeftRecursionCycles";
IssueCode2[IssueCode2["ModeNotInLexer"] = 56] = "ModeNotInLexer";
IssueCode2[IssueCode2["CannotFindAttributeNameInDecl"] = 57] = "CannotFindAttributeNameInDecl";
IssueCode2[IssueCode2["RuleWithTooFewAltLabels"] = 58] = "RuleWithTooFewAltLabels";
IssueCode2[IssueCode2["AltLabelRedef"] = 59] = "AltLabelRedef";
IssueCode2[IssueCode2["AltLabelConflictsWithRule"] = 60] = "AltLabelConflictsWithRule";
IssueCode2[IssueCode2["ImplicitTokenDefinition"] = 61] = "ImplicitTokenDefinition";
IssueCode2[IssueCode2["ImplicitStringDefinition"] = 62] = "ImplicitStringDefinition";
IssueCode2[IssueCode2["AttributeInLexerAction"] = 63] = "AttributeInLexerAction";
IssueCode2[IssueCode2["LabelBlockNotASet"] = 64] = "LabelBlockNotASet";
IssueCode2[IssueCode2["ExpectedNonGreedyWildcardBlock"] = 65] = "ExpectedNonGreedyWildcardBlock";
IssueCode2[IssueCode2["LexerCommandPlacementIssue"] = 66] = "LexerCommandPlacementIssue";
IssueCode2[IssueCode2["UnsupportedReferenceInLexerSet"] = 67] = "UnsupportedReferenceInLexerSet";
IssueCode2[IssueCode2["AssignmentToListLabel"] = 68] = "AssignmentToListLabel";
IssueCode2[IssueCode2["RetvalConflkictsWithRule"] = 69] = "RetvalConflkictsWithRule";
IssueCode2[IssueCode2["RetvalConflictsWithToken"] = 70] = "RetvalConflictsWithToken";
IssueCode2[IssueCode2["ArgConflictsWithRule"] = 71] = "ArgConflictsWithRule";
IssueCode2[IssueCode2["ArgConflictsWithToken"] = 72] = "ArgConflictsWithToken";
IssueCode2[IssueCode2["LocalConflictsWithRule"] = 73] = "LocalConflictsWithRule";
IssueCode2[IssueCode2["LocalConflictsWithToken"] = 74] = "LocalConflictsWithToken";
IssueCode2[IssueCode2["LocalConflictsWithArg"] = 75] = "LocalConflictsWithArg";
IssueCode2[IssueCode2["LocalConflictsWithRetval"] = 76] = "LocalConflictsWithRetval";
IssueCode2[IssueCode2["InvalidLiteralInLexerSet"] = 77] = "InvalidLiteralInLexerSet";
IssueCode2[IssueCode2["ModeWithoutRules"] = 78] = "ModeWithoutRules";
IssueCode2[IssueCode2["EpsilonToken"] = 79] = "EpsilonToken";
IssueCode2[IssueCode2["NoNonLrAlts"] = 80] = "NoNonLrAlts";
IssueCode2[IssueCode2["EpsilonLrFollow"] = 81] = "EpsilonLrFollow";
IssueCode2[IssueCode2["InvalidLexerCommand"] = 82] = "InvalidLexerCommand";
IssueCode2[IssueCode2["MisingLexerCommandArgument"] = 83] = "MisingLexerCommandArgument";
IssueCode2[IssueCode2["UnwantedLexerCommandArgument"] = 84] = "UnwantedLexerCommandArgument";
IssueCode2[IssueCode2["UnterminatedStringLiteral"] = 85] = "UnterminatedStringLiteral";
IssueCode2[IssueCode2["EpsilonClosure"] = 86] = "EpsilonClosure";
IssueCode2[IssueCode2["EpsilonOptional"] = 87] = "EpsilonOptional";
IssueCode2[IssueCode2["UnknownLexerConstant"] = 88] = "UnknownLexerConstant";
IssueCode2[IssueCode2["InvalidEscapeSequence"] = 89] = "InvalidEscapeSequence";
IssueCode2[IssueCode2["UnrecognizedAsscoOption"] = 90] = "UnrecognizedAsscoOption";
IssueCode2[IssueCode2["FragmentActionIgnored"] = 91] = "FragmentActionIgnored";
IssueCode2[IssueCode2["ReservedRuleName"] = 92] = "ReservedRuleName";
IssueCode2[IssueCode2["ParserRuleRefInLexerRule"] = 93] = "ParserRuleRefInLexerRule";
IssueCode2[IssueCode2["ChannelConflictsWithToken"] = 94] = "ChannelConflictsWithToken";
IssueCode2[IssueCode2["ChannelConflictsWithMode"] = 95] = "ChannelConflictsWithMode";
IssueCode2[IssueCode2["ChannelsBlockInParserGrammar"] = 96] = "ChannelsBlockInParserGrammar";
IssueCode2[IssueCode2["ChannelsBlockInCombinedGrammar"] = 97] = "ChannelsBlockInCombinedGrammar";
IssueCode2[IssueCode2["NonconformingLrRule"] = 98] = "NonconformingLrRule";
IssueCode2[IssueCode2["ModeConflictsWithToken"] = 99] = "ModeConflictsWithToken";
IssueCode2[IssueCode2["TokenConflictsWithCommonConstants"] = 100] = "TokenConflictsWithCommonConstants";
IssueCode2[IssueCode2["ChannelConflictsWithCommonConstants"] = 101] = "ChannelConflictsWithCommonConstants";
IssueCode2[IssueCode2["ModeConflictsWithCommonConstants"] = 102] = "ModeConflictsWithCommonConstants";
IssueCode2[IssueCode2["EmptyStringAndSetsNotAllowed"] = 103] = "EmptyStringAndSetsNotAllowed";
IssueCode2[IssueCode2["ConstantValueIsNotARecognizedTokenName"] = 104] = "ConstantValueIsNotARecognizedTokenName";
IssueCode2[IssueCode2["ConstantValueIsNotARecognizedModeName"] = 105] = "ConstantValueIsNotARecognizedModeName";
IssueCode2[IssueCode2["ConstantValueIsNotARecognizedChannelName"] = 106] = "ConstantValueIsNotARecognizedChannelName";
IssueCode2[IssueCode2["DuplicatedCommand"] = 107] = "DuplicatedCommand";
IssueCode2[IssueCode2["IncompatibleCommands"] = 108] = "IncompatibleCommands";
IssueCode2[IssueCode2["CharactersCollisionInSet"] = 109] = "CharactersCollisionInSet";
IssueCode2[IssueCode2["TplemjRangeInParser"] = 110] = "TplemjRangeInParser";
IssueCode2[IssueCode2["UnicodePropertyNotAllowedInRange"] = 111] = "UnicodePropertyNotAllowedInRange";
IssueCode2[IssueCode2["TokenUnreachable"] = 112] = "TokenUnreachable";
IssueCode2[IssueCode2["RangeProbablyContainsNotImpliedCharacter"] = 113] = "RangeProbablyContainsNotImpliedCharacter";
IssueCode2[IssueCode2["EofClosure"] = 114] = "EofClosure";
IssueCode2[IssueCode2["RedundantCaseInsensitiveLexerRuleOption"] = 115] = "RedundantCaseInsensitiveLexerRuleOption";
return IssueCode2;
})(IssueCode || {});
const issueTypes = /* @__PURE__ */ new Map([
[0 /* NoGrammarsFound */, { message: "no grammars found", severity: 5 /* Fatal */ }],
[1 /* CannotWriteFile */, { message: "cannot write file <arg>: <arg2>", severity: 3 /* Error */ }],
[2 /* InvalidCmdlineArg */, { message: "unknown command-line option <arg>", severity: 3 /* Error */ }],
[3 /* CannotFindTokensFile */, { message: "cannot find tokens file <arg> given for <arg2>", severity: 3 /* Error */ }],
[4 /* ErrorReadingTokensFile */, { message: "error reading tokens file <arg>: <arg2>", severity: 3 /* Error */ }],
[5 /* DirNotFound */, { message: "directory not found: <arg>", severity: 3 /* Error */ }],
[6 /* OutputDirIsFIle */, { message: "output directory is a file: <arg>", severity: 3 /* Error */ }],
[7 /* CannotOpenFile */, { message: "cannot find or open file: <arg><if(exception&&verbose)>; reason: <exception><endif>", severity: 3 /* Error */ }],
[8 /* FileAndGrammarNameDiffer */, { message: "grammar name <arg> and file name <arg2> differ", severity: 3 /* Error */ }],
[9 /* BadOptionSetSyntax */, { message: "invalid -Dname=value syntax: <arg>", severity: 3 /* Error */ }],
[10 /* WarningTreatedAsErrors */, { message: "warning treated as error", severity: 4 /* ErrorOneOff */ }],
[11 /* ErrorReadingImportedGrammar */, { message: "error reading imported grammar <arg> referenced in <arg2>", severity: 3 /* Error */ }],
[12 /* InternalError */, { message: 'internal error: <arg> <arg2><if(exception&&verbose)>: <exception><stackTrace; separator="\\n"><endif>', severity: 3 /* Error */ }],
[13 /* TokensFileSyntaxError */, { message: ".tokens file syntax error <arg>:<arg2>", severity: 3 /* Error */ }],
[14 /* StringTemplateWarning */, { message: 'template error: <arg> <arg2><if(exception&&verbose)>: <exception><stackTrace; separator="\\n"><endif>', severity: 1 /* Warning */ }],
[15 /* MissingCodeGenTemplates */, { message: "can't find code generation templates: <arg>", severity: 3 /* Error */ }],
[16 /* CannotCreateTargetGenerator */, { message: "ANTLR cannot generate <arg> code as of version " + antlrVersion, severity: 4 /* ErrorOneOff */ }],
[17 /* CodeTemaplateArgIssue */, { message: "code generation template <arg> has missing, misnamed, or incomplete arg list; missing <arg2>", severity: 3 /* Error */ }],
[18 /* CodeGenTemplatesIncomplete */, { message: "missing code generation template <arg>", severity: 3 /* Error */ }],
[19 /* NoModleToTemplateMapping */, { message: "no mapping to template name for output model class <arg>", severity: 3 /* Error */ }],
[20 /* IncompatibleToolAndTemplates */, { message: "<arg3> code generation target requires ANTLR <arg2>; it can't be loaded by the current ANTLR <arg>", severity: 3 /* Error */ }],
[21 /* SyntaxError */, { message: "syntax error: <arg>", severity: 3 /* Error */ }],
[22 /* RuleRedefinition */, { message: "rule <arg> redefinition; previous at line <arg2>", severity: 3 /* Error */ }],
[23 /* LexerRulesNotAllowed */, { message: "lexer rule <arg> not allowed in parser", severity: 3 /* Error */ }],
[24 /* ParserRuleNotAllowed */, { message: "parser rule <arg> not allowed in lexer", severity: 3 /* Error */ }],
[25 /* RepeatedPrequel */, { message: "repeated grammar prequel spec (options, tokens, or import); please merge", severity: 3 /* Error */ }],
[26 /* UndefinedRuleRef */, { message: "reference to undefined rule: <arg>", severity: 3 /* Error */ }],
[27 /* UndefinedRuleInNonlocalRef */, { message: "reference to undefined rule <arg> in non-local ref <arg3>", severity: 3 /* Error */ }],
[28 /* TokenNamesMustStartUpper */, { message: "token names must start with an uppercase letter: <arg>", severity: 3 /* Error */ }],
[29 /* UnknownSimpleAttribute */, { message: "unknown attribute reference <arg> in <arg2>", severity: 3 /* Error */ }],
[30 /* InvalidRuleParameterRef */, { message: "parameter <arg> of rule <arg2> is not accessible in this scope: <arg3>", severity: 3 /* Error */ }],
[31 /* UnknownRuleAttribute */, { message: "unknown attribute <arg> for rule <arg2> in <arg3>", severity: 3 /* Error */ }],
[32 /* UnknownAtrributeInScopoe */, { message: "attribute <arg> isn't a valid property in <arg2>", severity: 3 /* Error */ }],
[33 /* IsloatedRuleRef */, { message: "missing attribute access on rule reference <arg> in <arg2>", severity: 3 /* Error */ }],
[34 /* LabelConflictsWithRule */, { message: "label <arg> conflicts with rule with same name", severity: 3 /* Error */ }],
[35 /* LabelConflictsWithToken */, { message: "label <arg> conflicts with token with same name", severity: 3 /* Error */ }],
[36 /* LabelConflictsWithArg */, { message: "label <arg> conflicts with parameter with same name", severity: 3 /* Error */ }],
[37 /* LabelConflictsWithRetval */, { message: "label <arg> conflicts with return value with same name", severity: 3 /* Error */ }],
[38 /* LabelConflictsWithLocal */, { message: "label <arg> conflicts with local with same name", severity: 3 /* Error */ }],
[39 /* LabelTypeConflict */, { message: "label <arg> type mismatch with previous definition: <arg2>", severity: 3 /* Error */ }],
[40 /* RetValuConflictsWithArg */, { message: "return value <arg> conflicts with parameter with same name", severity: 3 /* Error */ }],
[41 /* MissingRuleArgs */, { message: "missing argument(s) on rule reference: <arg>", severity: 3 /* Error */ }],
[42 /* RuleHasNoArgs */, { message: "rule <arg> has no defined parameters", severity: 3 /* Error */ }],
[43 /* IllegalOption */, { message: "unsupported option <arg>", severity: 1 /* Warning */ }],
[44 /* IllegalOptionValue */, { message: "unsupported option value <arg>=<arg2>", severity: 1 /* Warning */ }],
[45 /* ActionRedefinition */, { message: "redefinition of <arg> action", severity: 3 /* Error */ }],
[46 /* NoRules */, { message: "<if(arg2.implicitLexerOwner)>implicitly generated <endif>grammar <arg> has no rules", severity: 3 /* Error */ }],
[47 /* NoSuchGrammarScope */, { message: "reference to undefined grammar in rule reference: <arg>.<arg2>", severity: 3 /* Error */ }],
[48 /* NoSuchRuleInScope */, { message: "rule <arg2> is not defined in grammar <arg>", severity: 3 /* Error */ }],
[49 /* TokenNameReassignment */, { message: "token name <arg> is already defined", severity: 1 /* Warning */ }],
[50 /* OptionsInDelegate */, { message: "options ignored in imported grammar <arg>", severity: 1 /* Warning */ }],
[51 /* CannotFindImportedGrammar */, { message: "can't find or load grammar <arg>", severity: 3 /* Error */ }],
[52 /* InvalidImport */, { message: "<arg.typeString> grammar <arg.name> cannot import <arg2.typeString> grammar <arg2.name>", severity: 3 /* Error */ }],
[53 /* ImportNameClash */, { message: "<arg.typeString> grammar <arg.name> and imported <arg2.typeString> grammar <arg2.name> both generate <arg2.recognizerName>", severity: 3 /* Error */ }],
[54 /* CannotFindTokensFileRefdInGrammar */, { message: "cannot find tokens file <arg>", severity: 3 /* Error */ }],
[55 /* LeftRecursionCycles */, { message: 'The following sets of rules are mutually left-recursive <arg:{c| [<c:{r|<r.name>}; separator=", ">]}; separator=" and ">', severity: 3 /* Error */ }],
[56 /* ModeNotInLexer */, { message: "lexical modes are only allowed in lexer grammars", severity: 3 /* Error */ }],
[57 /* CannotFindAttributeNameInDecl */, { message: "cannot find an attribute name in attribute declaration", severity: 3 /* Error */ }],
[58 /* RuleWithTooFewAltLabels */, { message: "rule <arg>: must label all alternatives or none", severity: 3 /* Error */ }],
[59 /* AltLabelRedef */, { message: "rule alt label <arg> redefined in rule <arg2>, originally in rule <arg3>", severity: 3 /* Error */ }],
[60 /* AltLabelConflictsWithRule */, { message: "rule alt label <arg> conflicts with rule <arg2>", severity: 3 /* Error */ }],
[61 /* ImplicitTokenDefinition */, { message: "implicit definition of token <arg> in parser", severity: 1 /* Warning */ }],
[62 /* ImplicitStringDefinition */, { message: "cannot create implicit token for string literal in non-combined grammar: <arg>", severity: 3 /* Error */ }],
[63 /* AttributeInLexerAction */, { message: "attribute references not allowed in lexer actions: $<arg>", severity: 3 /* Error */ }],
[64 /* LabelBlockNotASet */, { message: "label <arg> assigned to a block which is not a set", severity: 3 /* Error */ }],
[65 /* ExpectedNonGreedyWildcardBlock */, { message: "greedy block ()<arg> contains wildcard; the non-greedy syntax ()<arg>? may be preferred", severity: 1 /* Warning */ }],
[66 /* LexerCommandPlacementIssue */, { message: "->command in lexer rule <arg> must be last element of single outermost alt", severity: 3 /* Error */ }],
[67 /* UnsupportedReferenceInLexerSet */, { message: "rule reference <arg> is not currently supported in a set", severity: 3 /* Error */ }],
[68 /* AssignmentToListLabel */, { message: "cannot assign a value to list label <arg>", severity: 3 /* Error */ }],
[69 /* RetvalConflkictsWithRule */, { message: "return value <arg> conflicts with rule with same name", severity: 3 /* Error */ }],
[70 /* RetvalConflictsWithToken */, { message: "return value <arg> conflicts with token with same name", severity: 3 /* Error */ }],
[71 /* ArgConflictsWithRule */, { message: "parameter <arg> conflicts with rule with same name", severity: 3 /* Error */ }],
[72 /* ArgConflictsWithToken */, { message: "parameter <arg> conflicts with token with same name", severity: 3 /* Error */ }],
[73 /* LocalConflictsWithRule */, { message: "local <arg> conflicts with rule with same name", severity: 3 /* Error */ }],
[74 /* LocalConflictsWithToken */, { message: "local <arg> conflicts with rule token same name", severity: 3 /* Error */ }],
[75 /* LocalConflictsWithArg */, { message: "local <arg> conflicts with parameter with same name", severity: 3 /* Error */ }],
[76 /* LocalConflictsWithRetval */, { message: "local <arg> conflicts with return value with same name", severity: 3 /* Error */ }],
[77 /* InvalidLiteralInLexerSet */, { message: "multi-character literals are not allowed in lexer sets: <arg>", severity: 3 /* Error */ }],
[78 /* ModeWithoutRules */, { message: "lexer mode <arg> must contain at least one non-fragment rule", severity: 3 /* Error */ }],
[79 /* EpsilonToken */, { message: "non-fragment lexer rule <arg> can match the empty string", severity: 1 /* Warning */ }],
[80 /* NoNonLrAlts */, { message: "left recursive rule <arg> must contain an alternative which is not left recursive", severity: 3 /* Error */ }],
[81 /* EpsilonLrFollow */, { message: "left recursive rule <arg> contains a left recursive alternative which can be followed by the empty string", severity: 3 /* Error */ }],
[82 /* InvalidLexerCommand */, { message: "lexer command <arg> does not exist or is not supported by the current target", severity: 3 /* Error */ }],
[83 /* MisingLexerCommandArgument */, { message: "missing argument for lexer command <arg>", severity: 3 /* Error */ }],
[84 /* UnwantedLexerCommandArgument */, { message: "lexer command <arg> does not take any arguments", severity: 3 /* Error */ }],
[85 /* UnterminatedStringLiteral */, { message: "unterminated string literal", severity: 3 /* Error */ }],
[86 /* EpsilonClosure */, { message: "rule <arg> contains a closure with at least one alternative that can match an empty string", severity: 3 /* Error */ }],
[87 /* EpsilonOptional */, { message: "rule <arg> contains an optional block with at least one alternative that can match an empty string", severity: 1 /* Warning */ }],
[88 /* UnknownLexerConstant */, { message: "rule <arg> contains a lexer command with an unrecognized constant value; lexer interpreters may produce incorrect output", severity: 1 /* Warning */ }],
[89 /* InvalidEscapeSequence */, { message: "invalid escape sequence <arg>", severity: 3 /* Error */ }],
[90 /* UnrecognizedAsscoOption */, { message: "rule <arg> contains an assoc terminal option in an unrecognized location", severity: 1 /* Warning */ }],
[91 /* FragmentActionIgnored */, { message: "fragment rule <arg> contains an action or command which can never be executed", severity: 1 /* Warning */ }],
[92 /* ReservedRuleName */, { message: "cannot declare a rule with reserved name <arg>", severity: 3 /* Error */ }],
[93 /* ParserRuleRefInLexerRule */, { message: "reference to parser rule <arg> in lexer rule <arg2>", severity: 3 /* Error */ }],
[94 /* ChannelConflictsWithToken */, { message: "channel <arg> conflicts with token with same name", severity: 3 /* Error */ }],
[95 /* ChannelConflictsWithMode */, { message: "channel <arg> conflicts with mode with same name", severity: 3 /* Error */ }],
[96 /* ChannelsBlockInParserGrammar */, { message: "custom channels are not supported in parser grammars", severity: 3 /* Error */ }],
[97 /* ChannelsBlockInCombinedGrammar */, { message: "custom channels are not supported in combined grammars", severity: 3 /* Error */ }],
[98 /* NonconformingLrRule */, { message: "rule <arg> is left recursive but doesn't conform to a pattern ANTLR can handle", severity: 3 /* Error */ }],
[99 /* ModeConflictsWithToken */, { message: "mode <arg> conflicts with token with same name", severity: 3 /* Error */ }],
[100 /* TokenConflictsWithCommonConstants */, { message: "cannot use or declare token with reserved name <arg>", severity: 3 /* Error */ }],
[101 /* ChannelConflictsWithCommonConstants */, { message: "cannot use or declare channel with reserved name <arg>", severity: 3 /* Error */ }],
[102 /* ModeConflictsWithCommonConstants */, { message: "cannot use or declare mode with reserved name <arg>", severity: 3 /* Error */ }],
[103 /* EmptyStringAndSetsNotAllowed */, { message: "string literals and sets cannot be empty: <arg>", severity: 3 /* Error */ }],
[104 /* ConstantValueIsNotARecognizedTokenName */, { message: "<arg> is not a recognized token name", severity: 3 /* Error */ }],
[105 /* ConstantValueIsNotARecognizedModeName */, { message: "<arg> is not a recognized mode name", severity: 3 /* Error */ }],
[106 /* ConstantValueIsNotARecognizedChannelName */, { message: "<arg> is not a recognized channel name", severity: 3 /* Error */ }],
[107 /* DuplicatedCommand */, { message: "duplicated command <arg>", severity: 1 /* Warning */ }],
[108 /* IncompatibleCommands */, { message: "incompatible commands <arg> and <arg2>", severity: 1 /* Warning */ }],
[109 /* CharactersCollisionInSet */, { message: "chars <arg> used multiple times in set <arg2>", severity: 1 /* Warning */ }],
[110 /* TplemjRangeInParser */, { message: "token ranges not allowed in parser: <arg>..<arg2>", severity: 3 /* Error */ }],
[111 /* UnicodePropertyNotAllowedInRange */, { message: "unicode property escapes not allowed in lexer charset range: <arg>", severity: 3 /* Error */ }],
[112 /* TokenUnreachable */, { message: "One of the token <arg> values unreachable. <arg2> is always overlapped by token <arg3>", severity: 1 /* Warning */ }],
[113 /* RangeProbablyContainsNotImpliedCharacter */, { message: "Range <arg>..<arg2> probably contains not implied characters <arg3>. Both bounds should be defined in lower or UPPER case", severity: 1 /* Warning */ }],
[114 /* EofClosure */, { message: "rule <arg> contains a closure with at least one alternative that can match EOF", severity: 3 /* Error */ }],
[115 /* RedundantCaseInsensitiveLexerRuleOption */, { message: "caseInsensitive lexer rule option is redundant because its value equals to global value (<arg>)", severity: 1 /* Warning */ }]
]);
export {
IssueCode,
IssueSeverity,
issueTypes,
severityMap
};