bitmark-grammar
Version:
1,296 lines (1,280 loc) • 539 kB
text/typescript
// Generated from ./antlr/matchParser.g4 by ANTLR 4.9.0-SNAPSHOT
import { ATN } from "antlr4ts/atn/ATN";
import { ATNDeserializer } from "antlr4ts/atn/ATNDeserializer";
import { FailedPredicateException } from "antlr4ts/FailedPredicateException";
import { NotNull } from "antlr4ts/Decorators";
import { NoViableAltException } from "antlr4ts/NoViableAltException";
import { Override } from "antlr4ts/Decorators";
import { Parser } from "antlr4ts/Parser";
import { ParserRuleContext } from "antlr4ts/ParserRuleContext";
import { ParserATNSimulator } from "antlr4ts/atn/ParserATNSimulator";
import { ParseTreeListener } from "antlr4ts/tree/ParseTreeListener";
import { ParseTreeVisitor } from "antlr4ts/tree/ParseTreeVisitor";
import { RecognitionException } from "antlr4ts/RecognitionException";
import { RuleContext } from "antlr4ts/RuleContext";
//import { RuleVersion } from "antlr4ts/RuleVersion";
import { TerminalNode } from "antlr4ts/tree/TerminalNode";
import { Token } from "antlr4ts/Token";
import { TokenStream } from "antlr4ts/TokenStream";
import { Vocabulary } from "antlr4ts/Vocabulary";
import { VocabularyImpl } from "antlr4ts/VocabularyImpl";
import * as Utils from "antlr4ts/misc/Utils";
import { matchParserListener } from "./matchParserListener";
export class matchParser extends Parser {
public static readonly OPDOT = 1;
public static readonly S = 2;
public static readonly OP = 3;
public static readonly BitMatch = 4;
public static readonly BitMatchmatrix = 5;
public static readonly BitMatchall = 6;
public static readonly BitMatchrev = 7;
public static readonly BitMatchallrev = 8;
public static readonly BitMatchpic = 9;
public static readonly BitMatchaudio = 10;
public static readonly BitMatchsolgrp = 11;
public static readonly OPDOLL = 12;
public static readonly OPBUL = 13;
public static readonly OPRANGLES = 14;
public static readonly OPRANGLEL = 15;
public static readonly OPDANGLE = 16;
public static readonly OPU = 17;
public static readonly OPB = 18;
public static readonly OPQ = 19;
public static readonly OPA = 20;
public static readonly OPP = 21;
public static readonly OPM = 22;
public static readonly OPS = 23;
public static readonly OPR = 24;
public static readonly OPC = 25;
public static readonly OPITEM = 26;
public static readonly OPLEAD = 27;
public static readonly OPPAGENUMBER = 28;
public static readonly OPMARGINNUMBER = 29;
public static readonly OPHASH = 30;
public static readonly CL = 31;
public static readonly COLON = 32;
public static readonly AMP = 33;
public static readonly DBLCOLON = 34;
public static readonly PLUS = 35;
public static readonly DotAt = 36;
public static readonly Greater = 37;
public static readonly Less = 38;
public static readonly DOT = 39;
public static readonly RightAngle = 40;
public static readonly RightArrow = 41;
public static readonly EQ = 42;
public static readonly HSPL = 43;
public static readonly OR = 44;
public static readonly TENSE = 45;
public static readonly COMMENT = 46;
public static readonly DCANY = 47;
public static readonly Image_type = 48;
public static readonly Audio_type = 49;
public static readonly Video_type = 50;
public static readonly ArticleText = 51;
public static readonly NOTCL = 52;
public static readonly NUMERIC = 53;
public static readonly STRING = 54;
public static readonly NL = 55;
public static readonly NOTBITMARK = 56;
public static readonly ELIPSIS = 57;
public static readonly SENTENCE = 58;
public static readonly BARSTRING = 59;
public static readonly OPAT = 60;
public static readonly AtProgress = 61;
public static readonly AtReference = 62;
public static readonly AtWidth = 63;
public static readonly AtHeight = 64;
public static readonly AtProgressPoints = 65;
public static readonly AtShortanswer = 66;
public static readonly AtLonganswer = 67;
public static readonly AtExampleWithStr = 68;
public static readonly AtExamplecol = 69;
public static readonly AtExamplecl = 70;
public static readonly AtSampleSolution = 71;
public static readonly AtPartialAnswerS = 72;
public static readonly AtPartialAnswer = 73;
public static readonly AtLabeltrue = 74;
public static readonly AtLabelfalse = 75;
public static readonly AtPoints = 76;
public static readonly AtSrc = 77;
public static readonly AtPartner = 78;
public static readonly OPATALT = 79;
public static readonly OPAMARK = 80;
public static readonly ShowInIndex = 81;
public static readonly OpAtCaption = 82;
public static readonly OpAtLicense = 83;
public static readonly OpAtCopyright = 84;
public static readonly OpAtSearch = 85;
public static readonly OpAtIsTracked = 86;
public static readonly OpAtIsInfoOnly = 87;
public static readonly AtDate = 88;
public static readonly Http = 89;
public static readonly Https = 90;
public static readonly AmpAudio = 91;
public static readonly AmpImage = 92;
public static readonly AmpImageZoom = 93;
public static readonly AmpVideo = 94;
public static readonly AmpArticle = 95;
public static readonly AmpDocument = 96;
public static readonly AmpApp = 97;
public static readonly AmpWebsite = 98;
public static readonly AmpStillImageFilm = 99;
public static readonly AmpPdf = 100;
public static readonly OpAmpAudio = 101;
public static readonly OpAmpImage = 102;
public static readonly OpAmpImageZoom = 103;
public static readonly OpAmpVideo = 104;
public static readonly OpAmpArticle = 105;
public static readonly OpAmpArticleAtt = 106;
public static readonly OpAmpDocument = 107;
public static readonly OpAmpApp = 108;
public static readonly OpAmpWebsite = 109;
public static readonly OpAmpStillImageFilm = 110;
public static readonly BracEnclose = 111;
public static readonly AmpAudioLink = 112;
public static readonly AmpImageLink = 113;
public static readonly AmpVideoLink = 114;
public static readonly AmpArticleLink = 115;
public static readonly AmpDocumentLink = 116;
public static readonly AmpDocumentDownload = 117;
public static readonly AmpAppLink = 118;
public static readonly AmpWebsiteLink = 119;
public static readonly AmpStillImageFilmLink = 120;
public static readonly OpAmpAudioLink = 121;
public static readonly OpAmpImageLink = 122;
public static readonly OpAmpVideoLink = 123;
public static readonly OpAmpArticleLink = 124;
public static readonly OpAmpDocumentLink = 125;
public static readonly OpAmpDocumentDownload = 126;
public static readonly OpAmpAppLink = 127;
public static readonly OpAmpWebsiteLink = 128;
public static readonly OpAmpStillImageFilmLink = 129;
public static readonly AmpImageEmbed = 130;
public static readonly AmpVideoEmbed = 131;
public static readonly AmpAudioEmbed = 132;
public static readonly AmpDocumentEmbed = 133;
public static readonly AmpStillImageFilmEmbed = 134;
public static readonly OpAmpImageEmbed = 135;
public static readonly OpAmpVideoEmbed = 136;
public static readonly OpAmpAudioEmbed = 137;
public static readonly OpAmpDocumentEmbed = 138;
public static readonly OpAmpStillImageFilmEmbed = 139;
public static readonly BitmarkMinus = 140;
public static readonly BitmarkPlus = 141;
public static readonly ColonText = 142;
public static readonly ColonJson = 143;
public static readonly Prosemirror = 144;
public static readonly Placeholder = 145;
public static readonly BASIC = 146;
public static readonly JPG = 147;
public static readonly PNG = 148;
public static readonly GIF = 149;
public static readonly SVG = 150;
public static readonly MP2 = 151;
public static readonly MP3 = 152;
public static readonly MP4 = 153;
public static readonly FLV = 154;
public static readonly WMV = 155;
public static readonly MPEG = 156;
public static readonly MPG = 157;
public static readonly TEL = 158;
public static readonly DotArticleAtt = 159;
public static readonly STAR = 160;
public static readonly URL = 161;
public static readonly LIST_LINE = 162;
public static readonly ENCLBARS = 163;
public static readonly RULE_bitmark = 0;
public static readonly RULE_bitmark_ = 1;
public static readonly RULE_matches = 2;
public static readonly RULE_match_ = 3;
public static readonly RULE_match_matrix = 4;
public static readonly RULE_match_solution_grouped = 5;
public static readonly RULE_match_reverse = 6;
public static readonly RULE_match_all_reverse = 7;
public static readonly RULE_match_picture = 8;
public static readonly RULE_match_audio = 9;
public static readonly RULE_match_all = 10;
public static readonly RULE_bitElem = 11;
public static readonly RULE_gap = 12;
public static readonly RULE_single_gap = 13;
public static readonly RULE_ml_example = 14;
public static readonly RULE_longans = 15;
public static readonly RULE_shortans = 16;
public static readonly RULE_resource = 17;
public static readonly RULE_pair_heading = 18;
public static readonly RULE_pair_heading_multi = 19;
public static readonly RULE_key_title = 20;
public static readonly RULE_value_title = 21;
public static readonly RULE_value_title_multi = 22;
public static readonly RULE_pairs = 23;
public static readonly RULE_pqpair = 24;
public static readonly RULE_pquery = 25;
public static readonly RULE_pquery__ = 26;
public static readonly RULE_tense = 27;
public static readonly RULE_panswer = 28;
public static readonly RULE_panswer__ = 29;
public static readonly RULE_pair_images = 30;
public static readonly RULE_pair_image = 31;
public static readonly RULE_pair_audios = 32;
public static readonly RULE_pair_audio = 33;
public static readonly RULE_pair_multivals = 34;
public static readonly RULE_pair_multival = 35;
public static readonly RULE_pairmultival_image = 36;
public static readonly RULE_pairmultival_audio = 37;
public static readonly RULE_mpquery = 38;
public static readonly RULE_mpquery__ = 39;
public static readonly RULE_mpanswer = 40;
public static readonly RULE_mpanswer__ = 41;
public static readonly RULE_pimagebit = 42;
public static readonly RULE_pimage_one = 43;
public static readonly RULE_paudiobit = 44;
public static readonly RULE_bullet_item = 45;
public static readonly RULE_atpoint = 46;
public static readonly RULE_format = 47;
public static readonly RULE_resource_format = 48;
public static readonly RULE_resource_format_extra = 49;
public static readonly RULE_format2 = 50;
public static readonly RULE_image_format = 51;
public static readonly RULE_video_format = 52;
public static readonly RULE_article_format = 53;
public static readonly RULE_document_format = 54;
public static readonly RULE_app_format = 55;
public static readonly RULE_website_format = 56;
public static readonly RULE_stillimagefilm_format = 57;
public static readonly RULE_op_article_format = 58;
public static readonly RULE_op_document_format = 59;
public static readonly RULE_op_app_format = 60;
public static readonly RULE_op_website_format = 61;
public static readonly RULE_op_video_format = 62;
public static readonly RULE_op_stillimagefilm_format = 63;
public static readonly RULE_articlebit = 64;
public static readonly RULE_documentbit = 65;
public static readonly RULE_websitebit = 66;
public static readonly RULE_appbit = 67;
public static readonly RULE_stillimagefilmbit = 68;
public static readonly RULE_stillimg_one = 69;
public static readonly RULE_videobit = 70;
public static readonly RULE_video_one = 71;
public static readonly RULE_imagebit = 72;
public static readonly RULE_image_one = 73;
public static readonly RULE_op_image_format = 74;
public static readonly RULE_image_chained = 75;
public static readonly RULE_image_chained4match = 76;
public static readonly RULE_audiobit = 77;
public static readonly RULE_audio_one = 78;
public static readonly RULE_audio_format = 79;
public static readonly RULE_op_audio_format = 80;
public static readonly RULE_resource_chained = 81;
public static readonly RULE_telephone = 82;
public static readonly RULE_url = 83;
public static readonly RULE_item = 84;
public static readonly RULE_lead = 85;
public static readonly RULE_angleref = 86;
public static readonly RULE_example = 87;
public static readonly RULE_bracketed_text = 88;
public static readonly RULE_reference = 89;
public static readonly RULE_progress = 90;
public static readonly RULE_dateprop = 91;
public static readonly RULE_dateprop_chained = 92;
public static readonly RULE_instruction = 93;
public static readonly RULE_hint = 94;
public static readonly RULE_title = 95;
public static readonly RULE_bool_label = 96;
public static readonly RULE_progress_points = 97;
public static readonly RULE_istracked = 98;
public static readonly RULE_isinfoonly = 99;
public static readonly RULE_atdef = 100;
public static readonly RULE_atdef_ = 101;
public static readonly RULE_dollarans = 102;
public static readonly RULE_anchor = 103;
public static readonly RULE_dcolon = 104;
public static readonly RULE_colcoltext = 105;
public static readonly RULE_lines = 106;
public static readonly RULE_list_line = 107;
public static readonly RULE_s_and_w = 108;
public static readonly RULE_dclines = 109;
public static readonly RULE_opdoll = 110;
public static readonly RULE_opu = 111;
public static readonly RULE_opb = 112;
public static readonly RULE_opq = 113;
public static readonly RULE_opa = 114;
public static readonly RULE_opp = 115;
public static readonly RULE_opm = 116;
public static readonly RULE_ops = 117;
public static readonly RULE_opr = 118;
public static readonly RULE_opc = 119;
public static readonly RULE_clnsp = 120;
public static readonly RULE_or_ = 121;
public static readonly RULE_words = 122;
public static readonly RULE_sp = 123;
// tslint:disable:no-trailing-whitespace
public static readonly ruleNames: string[] = [
"bitmark", "bitmark_", "matches", "match_", "match_matrix", "match_solution_grouped",
"match_reverse", "match_all_reverse", "match_picture", "match_audio",
"match_all", "bitElem", "gap", "single_gap", "ml_example", "longans",
"shortans", "resource", "pair_heading", "pair_heading_multi", "key_title",
"value_title", "value_title_multi", "pairs", "pqpair", "pquery", "pquery__",
"tense", "panswer", "panswer__", "pair_images", "pair_image", "pair_audios",
"pair_audio", "pair_multivals", "pair_multival", "pairmultival_image",
"pairmultival_audio", "mpquery", "mpquery__", "mpanswer", "mpanswer__",
"pimagebit", "pimage_one", "paudiobit", "bullet_item", "atpoint", "format",
"resource_format", "resource_format_extra", "format2", "image_format",
"video_format", "article_format", "document_format", "app_format", "website_format",
"stillimagefilm_format", "op_article_format", "op_document_format", "op_app_format",
"op_website_format", "op_video_format", "op_stillimagefilm_format", "articlebit",
"documentbit", "websitebit", "appbit", "stillimagefilmbit", "stillimg_one",
"videobit", "video_one", "imagebit", "image_one", "op_image_format", "image_chained",
"image_chained4match", "audiobit", "audio_one", "audio_format", "op_audio_format",
"resource_chained", "telephone", "url", "item", "lead", "angleref", "example",
"bracketed_text", "reference", "progress", "dateprop", "dateprop_chained",
"instruction", "hint", "title", "bool_label", "progress_points", "istracked",
"isinfoonly", "atdef", "atdef_", "dollarans", "anchor", "dcolon", "colcoltext",
"lines", "list_line", "s_and_w", "dclines", "opdoll", "opu", "opb", "opq",
"opa", "opp", "opm", "ops", "opr", "opc", "clnsp", "or_", "words", "sp",
];
private static readonly _LITERAL_NAMES: Array<string | undefined> = [
undefined, "'[.'", undefined, "'['", undefined, undefined, undefined,
undefined, undefined, undefined, undefined, undefined, undefined, undefined,
undefined, undefined, undefined, undefined, undefined, undefined, undefined,
undefined, undefined, undefined, undefined, undefined, undefined, undefined,
undefined, undefined, "'[#'", "']'", "':'", "'&'", "'::'", "'+'", "'.@'",
"'>'", "'<'", "'.'", "'\u25BA'", "'\u2192'", "'=='", "'==='", undefined,
undefined, undefined, undefined, undefined, undefined, undefined, undefined,
undefined, undefined, undefined, undefined, undefined, undefined, undefined,
undefined, "'[@'", undefined, undefined, undefined, undefined, undefined,
undefined, undefined, undefined, undefined, undefined, undefined, undefined,
undefined, undefined, undefined, undefined, undefined, undefined, undefined,
undefined, undefined, undefined, undefined, undefined, undefined, undefined,
undefined, undefined, "'http://'", "'https://'", "'&audio'", "'&image'",
"'&image-zoom'", "'&video'", "'&article'", "'&document'", "'&app'", "'&website'",
"'&still-image-film'", "'&pdf'", undefined, undefined, undefined, undefined,
undefined, undefined, undefined, undefined, undefined, undefined, undefined,
"'&audio-link'", "'&image-link'", "'&video-link'", "'&article-link'",
"'&document-link'", "'&document-download'", "'&app-link'", "'&website-link'",
"'&still-image-film-link'", undefined, undefined, undefined, undefined,
undefined, undefined, undefined, undefined, undefined, "'&image-embed'",
"'&video-embed'", "'&daudio-embed'", "'&document-embed'", "'&still-image-film-embed'",
undefined, undefined, undefined, undefined, undefined, "':bitmark--'",
"':bitmark++'", "':text'", "':json'", "':prosemirror'", "':placeholder'",
"':basic'", "':jpg'", "':png'", "':gif'", "':svg'", "':mp2'", "':mp3'",
"':mp4'", "':flv'", "':wmv'", "':mpeg'", "':mpg'", "'tel:'", "'.article-attachment'",
"'*'",
];
private static readonly _SYMBOLIC_NAMES: Array<string | undefined> = [
undefined, "OPDOT", "S", "OP", "BitMatch", "BitMatchmatrix", "BitMatchall",
"BitMatchrev", "BitMatchallrev", "BitMatchpic", "BitMatchaudio", "BitMatchsolgrp",
"OPDOLL", "OPBUL", "OPRANGLES", "OPRANGLEL", "OPDANGLE", "OPU", "OPB",
"OPQ", "OPA", "OPP", "OPM", "OPS", "OPR", "OPC", "OPITEM", "OPLEAD", "OPPAGENUMBER",
"OPMARGINNUMBER", "OPHASH", "CL", "COLON", "AMP", "DBLCOLON", "PLUS",
"DotAt", "Greater", "Less", "DOT", "RightAngle", "RightArrow", "EQ", "HSPL",
"OR", "TENSE", "COMMENT", "DCANY", "Image_type", "Audio_type", "Video_type",
"ArticleText", "NOTCL", "NUMERIC", "STRING", "NL", "NOTBITMARK", "ELIPSIS",
"SENTENCE", "BARSTRING", "OPAT", "AtProgress", "AtReference", "AtWidth",
"AtHeight", "AtProgressPoints", "AtShortanswer", "AtLonganswer", "AtExampleWithStr",
"AtExamplecol", "AtExamplecl", "AtSampleSolution", "AtPartialAnswerS",
"AtPartialAnswer", "AtLabeltrue", "AtLabelfalse", "AtPoints", "AtSrc",
"AtPartner", "OPATALT", "OPAMARK", "ShowInIndex", "OpAtCaption", "OpAtLicense",
"OpAtCopyright", "OpAtSearch", "OpAtIsTracked", "OpAtIsInfoOnly", "AtDate",
"Http", "Https", "AmpAudio", "AmpImage", "AmpImageZoom", "AmpVideo", "AmpArticle",
"AmpDocument", "AmpApp", "AmpWebsite", "AmpStillImageFilm", "AmpPdf",
"OpAmpAudio", "OpAmpImage", "OpAmpImageZoom", "OpAmpVideo", "OpAmpArticle",
"OpAmpArticleAtt", "OpAmpDocument", "OpAmpApp", "OpAmpWebsite", "OpAmpStillImageFilm",
"BracEnclose", "AmpAudioLink", "AmpImageLink", "AmpVideoLink", "AmpArticleLink",
"AmpDocumentLink", "AmpDocumentDownload", "AmpAppLink", "AmpWebsiteLink",
"AmpStillImageFilmLink", "OpAmpAudioLink", "OpAmpImageLink", "OpAmpVideoLink",
"OpAmpArticleLink", "OpAmpDocumentLink", "OpAmpDocumentDownload", "OpAmpAppLink",
"OpAmpWebsiteLink", "OpAmpStillImageFilmLink", "AmpImageEmbed", "AmpVideoEmbed",
"AmpAudioEmbed", "AmpDocumentEmbed", "AmpStillImageFilmEmbed", "OpAmpImageEmbed",
"OpAmpVideoEmbed", "OpAmpAudioEmbed", "OpAmpDocumentEmbed", "OpAmpStillImageFilmEmbed",
"BitmarkMinus", "BitmarkPlus", "ColonText", "ColonJson", "Prosemirror",
"Placeholder", "BASIC", "JPG", "PNG", "GIF", "SVG", "MP2", "MP3", "MP4",
"FLV", "WMV", "MPEG", "MPG", "TEL", "DotArticleAtt", "STAR", "URL", "LIST_LINE",
"ENCLBARS",
];
public static readonly VOCABULARY: Vocabulary = new VocabularyImpl(matchParser._LITERAL_NAMES, matchParser._SYMBOLIC_NAMES, []);
// @Override
// @NotNull
public get vocabulary(): Vocabulary {
return matchParser.VOCABULARY;
}
// tslint:enable:no-trailing-whitespace
// @Override
public get grammarFileName(): string { return "matchParser.g4"; }
// @Override
public get ruleNames(): string[] { return matchParser.ruleNames; }
// @Override
public get serializedATN(): string { return matchParser._serializedATN; }
protected createFailedPredicateException(predicate?: string, message?: string): FailedPredicateException {
return new FailedPredicateException(this, predicate, message);
}
constructor(input: TokenStream) {
super(input);
this._interp = new ParserATNSimulator(matchParser._ATN, this);
}
// @RuleVersion(0)
public bitmark(): BitmarkContext {
let _localctx: BitmarkContext = new BitmarkContext(this._ctx, this.state);
this.enterRule(_localctx, 0, matchParser.RULE_bitmark);
let _la: number;
try {
this.enterOuterAlt(_localctx, 1);
{
this.state = 261;
this._errHandler.sync(this);
_la = this._input.LA(1);
do {
{
{
this.state = 248;
this.bitmark_();
this.state = 258;
this._errHandler.sync(this);
_la = this._input.LA(1);
while (_la === matchParser.S || _la === matchParser.NL) {
{
{
this.state = 252;
this._errHandler.sync(this);
_la = this._input.LA(1);
while (_la === matchParser.S) {
{
{
this.state = 249;
this.match(matchParser.S);
}
}
this.state = 254;
this._errHandler.sync(this);
_la = this._input.LA(1);
}
this.state = 255;
this.match(matchParser.NL);
}
}
this.state = 260;
this._errHandler.sync(this);
_la = this._input.LA(1);
}
}
}
this.state = 263;
this._errHandler.sync(this);
_la = this._input.LA(1);
} while ((((_la) & ~0x1F) === 0 && ((1 << _la) & ((1 << matchParser.BitMatch) | (1 << matchParser.BitMatchmatrix) | (1 << matchParser.BitMatchall) | (1 << matchParser.BitMatchrev) | (1 << matchParser.BitMatchallrev) | (1 << matchParser.BitMatchpic) | (1 << matchParser.BitMatchaudio) | (1 << matchParser.BitMatchsolgrp))) !== 0));
this.state = 265;
this.match(matchParser.EOF);
}
}
catch (re) {
if (re instanceof RecognitionException) {
_localctx.exception = re;
this._errHandler.reportError(this, re);
this._errHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return _localctx;
}
// @RuleVersion(0)
public bitmark_(): Bitmark_Context {
let _localctx: Bitmark_Context = new Bitmark_Context(this._ctx, this.state);
this.enterRule(_localctx, 2, matchParser.RULE_bitmark_);
try {
this.enterOuterAlt(_localctx, 1);
{
this.state = 267;
this.matches();
}
}
catch (re) {
if (re instanceof RecognitionException) {
_localctx.exception = re;
this._errHandler.reportError(this, re);
this._errHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return _localctx;
}
// @RuleVersion(0)
public matches(): MatchesContext {
let _localctx: MatchesContext = new MatchesContext(this._ctx, this.state);
this.enterRule(_localctx, 4, matchParser.RULE_matches);
try {
this.state = 277;
this._errHandler.sync(this);
switch (this._input.LA(1)) {
case matchParser.BitMatch:
this.enterOuterAlt(_localctx, 1);
{
this.state = 269;
this.match_();
}
break;
case matchParser.BitMatchmatrix:
this.enterOuterAlt(_localctx, 2);
{
this.state = 270;
this.match_matrix();
}
break;
case matchParser.BitMatchall:
this.enterOuterAlt(_localctx, 3);
{
this.state = 271;
this.match_all();
}
break;
case matchParser.BitMatchallrev:
this.enterOuterAlt(_localctx, 4);
{
this.state = 272;
this.match_all_reverse();
}
break;
case matchParser.BitMatchrev:
this.enterOuterAlt(_localctx, 5);
{
this.state = 273;
this.match_reverse();
}
break;
case matchParser.BitMatchpic:
this.enterOuterAlt(_localctx, 6);
{
this.state = 274;
this.match_picture();
}
break;
case matchParser.BitMatchaudio:
this.enterOuterAlt(_localctx, 7);
{
this.state = 275;
this.match_audio();
}
break;
case matchParser.BitMatchsolgrp:
this.enterOuterAlt(_localctx, 8);
{
this.state = 276;
this.match_solution_grouped();
}
break;
default:
throw new NoViableAltException(this);
}
}
catch (re) {
if (re instanceof RecognitionException) {
_localctx.exception = re;
this._errHandler.reportError(this, re);
this._errHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return _localctx;
}
// @RuleVersion(0)
public match_(): Match_Context {
let _localctx: Match_Context = new Match_Context(this._ctx, this.state);
this.enterRule(_localctx, 6, matchParser.RULE_match_);
let _la: number;
try {
let _alt: number;
this.state = 348;
this._errHandler.sync(this);
switch ( this.interpreter.adaptivePredict(this._input, 15, this._ctx) ) {
case 1:
this.enterOuterAlt(_localctx, 1);
{
this.state = 279;
this.match(matchParser.BitMatch);
this.state = 280;
this.format();
this.state = 281;
this.match(matchParser.CL);
this.state = 285;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 4, this._ctx);
while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER) {
if (_alt === 1) {
{
{
this.state = 282;
this.match(matchParser.NL);
}
}
}
this.state = 287;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 4, this._ctx);
}
this.state = 297;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 6, this._ctx);
while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER) {
if (_alt === 1) {
{
{
this.state = 288;
this.bitElem();
this.state = 292;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 5, this._ctx);
while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER) {
if (_alt === 1) {
{
{
this.state = 289;
this.match(matchParser.NL);
}
}
}
this.state = 294;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 5, this._ctx);
}
}
}
}
this.state = 299;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 6, this._ctx);
}
}
break;
case 2:
this.enterOuterAlt(_localctx, 2);
{
this.state = 300;
this.match(matchParser.BitMatch);
this.state = 301;
this.format();
this.state = 302;
this.match(matchParser.CL);
this.state = 304;
this._errHandler.sync(this);
_la = this._input.LA(1);
do {
{
{
this.state = 303;
this.match(matchParser.NL);
}
}
this.state = 306;
this._errHandler.sync(this);
_la = this._input.LA(1);
} while (_la === matchParser.NL);
this.state = 317;
this._errHandler.sync(this);
_la = this._input.LA(1);
while ((((_la) & ~0x1F) === 0 && ((1 << _la) & ((1 << matchParser.S) | (1 << matchParser.OPDOLL) | (1 << matchParser.OPRANGLES) | (1 << matchParser.OPRANGLEL) | (1 << matchParser.OPDANGLE) | (1 << matchParser.OPU) | (1 << matchParser.OPB) | (1 << matchParser.OPQ) | (1 << matchParser.OPA) | (1 << matchParser.OPS) | (1 << matchParser.OPC) | (1 << matchParser.OPITEM) | (1 << matchParser.CL))) !== 0) || ((((_la - 32)) & ~0x1F) === 0 && ((1 << (_la - 32)) & ((1 << (matchParser.COLON - 32)) | (1 << (matchParser.AMP - 32)) | (1 << (matchParser.DBLCOLON - 32)) | (1 << (matchParser.Greater - 32)) | (1 << (matchParser.Less - 32)) | (1 << (matchParser.RightAngle - 32)) | (1 << (matchParser.RightArrow - 32)) | (1 << (matchParser.DCANY - 32)) | (1 << (matchParser.ArticleText - 32)) | (1 << (matchParser.NUMERIC - 32)) | (1 << (matchParser.STRING - 32)) | (1 << (matchParser.NOTBITMARK - 32)) | (1 << (matchParser.ELIPSIS - 32)) | (1 << (matchParser.SENTENCE - 32)) | (1 << (matchParser.BARSTRING - 32)) | (1 << (matchParser.AtReference - 32)))) !== 0) || ((((_la - 68)) & ~0x1F) === 0 && ((1 << (_la - 68)) & ((1 << (matchParser.AtExampleWithStr - 68)) | (1 << (matchParser.AtExamplecol - 68)) | (1 << (matchParser.AtExamplecl - 68)) | (1 << (matchParser.AtSampleSolution - 68)) | (1 << (matchParser.AtLabeltrue - 68)) | (1 << (matchParser.AtLabelfalse - 68)) | (1 << (matchParser.OpAtCopyright - 68)))) !== 0) || ((((_la - 101)) & ~0x1F) === 0 && ((1 << (_la - 101)) & ((1 << (matchParser.OpAmpAudio - 101)) | (1 << (matchParser.OpAmpImage - 101)) | (1 << (matchParser.OpAmpImageZoom - 101)) | (1 << (matchParser.OpAmpVideo - 101)) | (1 << (matchParser.OpAmpArticle - 101)) | (1 << (matchParser.OpAmpDocument - 101)) | (1 << (matchParser.OpAmpApp - 101)) | (1 << (matchParser.OpAmpWebsite - 101)) | (1 << (matchParser.OpAmpStillImageFilm - 101)) | (1 << (matchParser.BracEnclose - 101)) | (1 << (matchParser.OpAmpAudioLink - 101)) | (1 << (matchParser.OpAmpImageLink - 101)) | (1 << (matchParser.OpAmpVideoLink - 101)) | (1 << (matchParser.OpAmpArticleLink - 101)) | (1 << (matchParser.OpAmpDocumentLink - 101)) | (1 << (matchParser.OpAmpDocumentDownload - 101)) | (1 << (matchParser.OpAmpAppLink - 101)) | (1 << (matchParser.OpAmpWebsiteLink - 101)) | (1 << (matchParser.OpAmpStillImageFilmLink - 101)))) !== 0) || ((((_la - 136)) & ~0x1F) === 0 && ((1 << (_la - 136)) & ((1 << (matchParser.OpAmpVideoEmbed - 136)) | (1 << (matchParser.OpAmpAudioEmbed - 136)) | (1 << (matchParser.OpAmpDocumentEmbed - 136)) | (1 << (matchParser.OpAmpStillImageFilmEmbed - 136)) | (1 << (matchParser.LIST_LINE - 136)))) !== 0)) {
{
{
this.state = 308;
this.bitElem();
this.state = 312;
this._errHandler.sync(this);
_la = this._input.LA(1);
while (_la === matchParser.NL) {
{
{
this.state = 309;
this.match(matchParser.NL);
}
}
this.state = 314;
this._errHandler.sync(this);
_la = this._input.LA(1);
}
}
}
this.state = 319;
this._errHandler.sync(this);
_la = this._input.LA(1);
}
this.state = 324;
this._errHandler.sync(this);
switch ( this.interpreter.adaptivePredict(this._input, 10, this._ctx) ) {
case 1:
{
{
this.state = 320;
this.match(matchParser.HSPL);
this.state = 321;
this.match(matchParser.NL);
}
this.state = 323;
this.pair_heading();
}
break;
}
this.state = 326;
this.pairs();
this.state = 330;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 11, this._ctx);
while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER) {
if (_alt === 1) {
{
{
this.state = 327;
this.match(matchParser.NL);
}
}
}
this.state = 332;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 11, this._ctx);
}
this.state = 346;
this._errHandler.sync(this);
switch ( this.interpreter.adaptivePredict(this._input, 14, this._ctx) ) {
case 1:
{
this.state = 333;
this.resource();
this.state = 343;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 13, this._ctx);
while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER) {
if (_alt === 1) {
{
{
this.state = 337;
this._errHandler.sync(this);
_la = this._input.LA(1);
while (_la === matchParser.NL) {
{
{
this.state = 334;
this.match(matchParser.NL);
}
}
this.state = 339;
this._errHandler.sync(this);
_la = this._input.LA(1);
}
this.state = 340;
this.resource();
}
}
}
this.state = 345;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 13, this._ctx);
}
}
break;
}
}
break;
}
}
catch (re) {
if (re instanceof RecognitionException) {
_localctx.exception = re;
this._errHandler.reportError(this, re);
this._errHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return _localctx;
}
// @RuleVersion(0)
public match_matrix(): Match_matrixContext {
let _localctx: Match_matrixContext = new Match_matrixContext(this._ctx, this.state);
this.enterRule(_localctx, 8, matchParser.RULE_match_matrix);
let _la: number;
try {
let _alt: number;
this.state = 419;
this._errHandler.sync(this);
switch ( this.interpreter.adaptivePredict(this._input, 27, this._ctx) ) {
case 1:
this.enterOuterAlt(_localctx, 1);
{
this.state = 350;
this.match(matchParser.BitMatchmatrix);
this.state = 351;
this.format();
this.state = 352;
this.match(matchParser.CL);
this.state = 356;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 16, this._ctx);
while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER) {
if (_alt === 1) {
{
{
this.state = 353;
this.match(matchParser.NL);
}
}
}
this.state = 358;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 16, this._ctx);
}
this.state = 368;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 18, this._ctx);
while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER) {
if (_alt === 1) {
{
{
this.state = 359;
this.bitElem();
this.state = 363;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 17, this._ctx);
while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER) {
if (_alt === 1) {
{
{
this.state = 360;
this.match(matchParser.NL);
}
}
}
this.state = 365;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 17, this._ctx);
}
}
}
}
this.state = 370;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 18, this._ctx);
}
}
break;
case 2:
this.enterOuterAlt(_localctx, 2);
{
this.state = 371;
this.match(matchParser.BitMatchmatrix);
this.state = 372;
this.format();
this.state = 373;
this.match(matchParser.CL);
this.state = 375;
this._errHandler.sync(this);
_la = this._input.LA(1);
do {
{
{
this.state = 374;
this.match(matchParser.NL);
}
}
this.state = 377;
this._errHandler.sync(this);
_la = this._input.LA(1);
} while (_la === matchParser.NL);
this.state = 388;
this._errHandler.sync(this);
_la = this._input.LA(1);
while ((((_la) & ~0x1F) === 0 && ((1 << _la) & ((1 << matchParser.S) | (1 << matchParser.OPDOLL) | (1 << matchParser.OPRANGLES) | (1 << matchParser.OPRANGLEL) | (1 << matchParser.OPDANGLE) | (1 << matchParser.OPU) | (1 << matchParser.OPB) | (1 << matchParser.OPQ) | (1 << matchParser.OPA) | (1 << matchParser.OPS) | (1 << matchParser.OPC) | (1 << matchParser.OPITEM) | (1 << matchParser.CL))) !== 0) || ((((_la - 32)) & ~0x1F) === 0 && ((1 << (_la - 32)) & ((1 << (matchParser.COLON - 32)) | (1 << (matchParser.AMP - 32)) | (1 << (matchParser.DBLCOLON - 32)) | (1 << (matchParser.Greater - 32)) | (1 << (matchParser.Less - 32)) | (1 << (matchParser.RightAngle - 32)) | (1 << (matchParser.RightArrow - 32)) | (1 << (matchParser.DCANY - 32)) | (1 << (matchParser.ArticleText - 32)) | (1 << (matchParser.NUMERIC - 32)) | (1 << (matchParser.STRING - 32)) | (1 << (matchParser.NOTBITMARK - 32)) | (1 << (matchParser.ELIPSIS - 32)) | (1 << (matchParser.SENTENCE - 32)) | (1 << (matchParser.BARSTRING - 32)) | (1 << (matchParser.AtReference - 32)))) !== 0) || ((((_la - 68)) & ~0x1F) === 0 && ((1 << (_la - 68)) & ((1 << (matchParser.AtExampleWithStr - 68)) | (1 << (matchParser.AtExamplecol - 68)) | (1 << (matchParser.AtExamplecl - 68)) | (1 << (matchParser.AtSampleSolution - 68)) | (1 << (matchParser.AtLabeltrue - 68)) | (1 << (matchParser.AtLabelfalse - 68)) | (1 << (matchParser.OpAtCopyright - 68)))) !== 0) || ((((_la - 101)) & ~0x1F) === 0 && ((1 << (_la - 101)) & ((1 << (matchParser.OpAmpAudio - 101)) | (1 << (matchParser.OpAmpImage - 101)) | (1 << (matchParser.OpAmpImageZoom - 101)) | (1 << (matchParser.OpAmpVideo - 101)) | (1 << (matchParser.OpAmpArticle - 101)) | (1 << (matchParser.OpAmpDocument - 101)) | (1 << (matchParser.OpAmpApp - 101)) | (1 << (matchParser.OpAmpWebsite - 101)) | (1 << (matchParser.OpAmpStillImageFilm - 101)) | (1 << (matchParser.BracEnclose - 101)) | (1 << (matchParser.OpAmpAudioLink - 101)) | (1 << (matchParser.OpAmpImageLink - 101)) | (1 << (matchParser.OpAmpVideoLink - 101)) | (1 << (matchParser.OpAmpArticleLink - 101)) | (1 << (matchParser.OpAmpDocumentLink - 101)) | (1 << (matchParser.OpAmpDocumentDownload - 101)) | (1 << (matchParser.OpAmpAppLink - 101)) | (1 << (matchParser.OpAmpWebsiteLink - 101)) | (1 << (matchParser.OpAmpStillImageFilmLink - 101)))) !== 0) || ((((_la - 136)) & ~0x1F) === 0 && ((1 << (_la - 136)) & ((1 << (matchParser.OpAmpVideoEmbed - 136)) | (1 << (matchParser.OpAmpAudioEmbed - 136)) | (1 << (matchParser.OpAmpDocumentEmbed - 136)) | (1 << (matchParser.OpAmpStillImageFilmEmbed - 136)) | (1 << (matchParser.LIST_LINE - 136)))) !== 0)) {
{
{
this.state = 379;
this.bitElem();
this.state = 383;
this._errHandler.sync(this);
_la = this._input.LA(1);
while (_la === matchParser.NL) {
{
{
this.state = 380;
this.match(matchParser.NL);
}
}
this.state = 385;
this._errHandler.sync(this);
_la = this._input.LA(1);
}
}
}
this.state = 390;
this._errHandler.sync(this);
_la = this._input.LA(1);
}
this.state = 395;
this._errHandler.sync(this);
switch ( this.interpreter.adaptivePredict(this._input, 22, this._ctx) ) {
case 1:
{
{
this.state = 391;
this.match(matchParser.HSPL);
this.state = 392;
this.match(matchParser.NL);
}
this.state = 394;
this.pair_heading_multi();
}
break;
}
this.state = 397;
this.pair_multivals();
this.state = 401;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 23, this._ctx);
while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER) {
if (_alt === 1) {
{
{
this.state = 398;
this.match(matchParser.NL);
}
}
}
this.state = 403;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 23, this._ctx);
}
this.state = 417;
this._errHandler.sync(this);
switch ( this.interpreter.adaptivePredict(this._input, 26, this._ctx) ) {
case 1:
{
this.state = 404;
this.resource();
this.state = 414;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 25, this._ctx);
while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER) {
if (_alt === 1) {
{
{
this.state = 408;
this._errHandler.sync(this);
_la = this._input.LA(1);
while (_la === matchParser.NL) {
{
{
this.state = 405;
this.match(matchParser.NL);
}
}
this.state = 410;
this._errHandler.sync(this);
_la = this._input.LA(1);
}
this.state = 411;
this.resource();
}
}
}
this.state = 416;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 25, this._ctx);
}
}
break;
}
}
break;
}
}
catch (re) {
if (re instanceof RecognitionException) {
_localctx.exception = re;
this._errHandler.reportError(this, re);
this._errHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return _localctx;
}
// @RuleVersion(0)
public match_solution_grouped(): Match_solution_groupedContext {
let _localctx: Match_solution_groupedContext = new Match_solution_groupedContext(this._ctx, this.state);
this.enterRule(_localctx, 10, matchParser.RULE_match_solution_grouped);
let _la: number;
try {
let _alt: number;
this.state = 490;
this._errHandler.sync(this);
switch ( this.interpreter.adaptivePredict(this._input, 39, this._ctx) ) {
case 1:
this.enterOuterAlt(_localctx, 1);
{
this.state = 421;
this.match(matchParser.BitMatchsolgrp);
this.state = 422;
this.format();
this.state = 423;
this.match(matchParser.CL);
this.state = 427;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 28, this._ctx);
while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER) {
if (_alt === 1) {
{
{
this.state = 424;
this.match(matchParser.NL);
}
}
}
this.state = 429;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 28, this._ctx);
}
this.state = 439;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 30, this._ctx);
while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER) {
if (_alt === 1) {
{
{
this.state = 430;
this.bitElem();
this.state = 434;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 29, this._ctx);
while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER) {
if (_alt === 1) {
{
{
this.state = 431;
this.match(matchParser.NL);
}
}
}
this.state = 436;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 29, this._ctx);
}
}
}
}
this.state = 441;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 30, this._ctx);
}
}
break;
case 2:
this.enterOuterAlt(_localctx, 2);
{
this.state = 442;
this.match(matchParser.BitMatchsolgrp);
this.state = 443;
this.format();
this.state = 444;
this.match(matchParser.CL);
this.state = 446;
this._errHandler.sync(this);
_la = this._input.LA(1);
do {
{
{
this.state = 445;
this.match(matchParser.NL);
}
}
this.state = 448;
this._errHandler.sync(this);
_la = this._input.LA(1);
} while (_la === matchParser.NL);
this.state = 459;
this._errHandler.sync(this);
_la = this._input.LA(1);
while ((((_la) & ~0x1F) === 0 && ((1 << _la) & ((1 << matchParser.S) | (1 << matchParser.OPDOLL) | (1 << matchParser.OPRANGLES) | (1 << matchParser.OPRANGLEL) | (1 << matchParser.OPDANGLE) | (1 << matchParser.OPU) | (1 << matchParser.OPB) | (1 << matchParser.OPQ) | (1 << matchParser.OPA) | (1 << matchParser.OPS) | (1 << matchParser.OPC) | (1 << matchParser.OPITEM) | (1 << matchParser.CL))) !== 0) || ((((_la - 32)) & ~0x1F) === 0 && ((1 << (_la - 32)) & ((1 << (matchParser.COLON - 32)) | (1 << (matchParser.AMP - 32)) | (1 << (matchParser.DBLCOLON - 32)) | (1 << (matchParser.Greater - 32)) | (1 << (matchParser.Less - 32)) | (1 << (matchParser.RightAngle - 32)) | (1 << (matchParser.RightArrow - 32)) | (1 << (matchParser.DCANY - 32)) | (1 << (matchParser.ArticleText - 32)) | (1 << (matchParser.NUMERIC - 32)) | (1 << (matchParser.STRING - 32)) | (1 << (matchParser.NOTBITMARK - 32)) | (1 << (matchParser.ELIPSIS - 32)) | (1 << (matchParser.SENTENCE - 32)) | (1 << (matchParser.BARSTRING - 32)) | (1 << (matchParser.AtReference - 32)))) !== 0) || ((((_la - 68)) & ~0x1F) === 0 && ((1 << (_la - 68)) & ((1 << (matchParser.AtExampleWithStr - 68)) | (1 << (matchParser.AtExamplecol - 68)) | (1 << (matchParser.AtExamplecl - 68)) | (1 << (matchParser.AtSampleSolution - 68)) | (1 << (matchParser.AtLabeltrue - 68)) | (1 << (matchParser.AtLabelfalse - 68)) | (1 << (matchParser.OpAtCopyright - 68)))) !== 0) || ((((_la - 101)) & ~0x1F) === 0 && ((1 << (_la - 101)) & ((1 << (matchParser.OpAmpAudio - 101)) | (1 << (matchParser.OpAmpImage - 101)) | (1 << (matchParser.OpAmpImageZoom - 101)) | (1 << (matchParser.OpAmpVideo - 101)) | (1 << (matchParser.OpAmpArticle - 101)) | (1 << (matchParser.OpAmpDocument - 101)) | (1 << (matchParser.OpAmpApp - 101)) | (1 << (matchParser.OpAmpWebsite - 101)) | (1 << (matchParser.OpAmpStillImageFilm - 101)) | (1 << (matchParser.BracEnclose - 101)) | (1 << (matchParser.OpAmpAudioLink - 101)) | (1 << (matchParser.OpAmpImageLink - 101)) | (1 << (matchParser.OpAmpVideoLink - 101)) | (1 << (matchParser.OpAmpArticleLink - 101)) | (1 << (matchParser.OpAmpDocumentLink - 101)) | (1 << (matchParser.OpAmpDocumentDownload - 101)) | (1 << (matchParser.OpAmpAppLink - 101)) | (1 << (matchParser.OpAmpWebsiteLink - 101)) | (1 << (matchParser.OpAmpStillImageFilmLink - 101)))) !== 0) || ((((_la - 136)) & ~0x1F) === 0 && ((1 << (_la - 136)) & ((1 << (matchParser.OpAmpVideoEmbed - 136)) | (1 << (matchParser.OpAmpAudioEmbed - 136)) | (1 << (matchParser.OpAmpDocumentEmbed - 136)) | (1 << (matchParser.OpAmpStillImageFilmEmbed - 136)) | (1 << (matchParser.LIST_LINE - 136)))) !== 0)) {
{
{
this.state = 450;
this.bitElem();
this.state = 454;
this._errHandler.sync(this);
_la = this._input.LA(1);
while (_la === matchParser.NL) {
{
{
this.state = 451;
this.match(matchParser.NL);
}
}
this.state = 456;
this._errHandler.sync(this);
_la = this._input.LA(1);
}
}
}
this.state = 461;
this._errHandler.sync(this);
_la = this._input.LA(1);
}
this.state = 466;
this._errHandler.sync(this);
switch ( this.interpreter.adaptivePredict(this._input, 34, this._ctx) ) {
case 1:
{
{
this.state = 462;
this.match(matchParser.HSPL);
this.state = 463;
this.match(matchParser.NL);
}
this.state = 465;
this.pair_heading();
}
break;
}
this.state = 468;
this.pairs();
this.state = 472;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 35, this._ctx);
while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER) {
if (_alt === 1) {
{
{
this.state = 469;
this.match(matchParser.NL);
}
}
}
this.state = 474;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 35, this._ctx);
}
this.state = 488;
this._errHandler.sync(this);
switch ( this.interpreter.adaptivePredict(this._input, 38, this._ctx) ) {
case 1:
{
this.state = 475;
this.resource();
this.state = 485;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 37, this._ctx);
while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER) {
if (_alt === 1) {
{
{
this.state = 479;
this._errHandler.sync(this);
_la = this._input.LA(1);
while (_la === matchParser.NL) {
{
{
this.state = 476;
this.match(matchParser.NL);
}
}
this.state = 481;
this._errHandler.sync(this);
_la = this._input.LA(1);
}
this.state = 482;
this.resource();
}
}
}
this.state = 487;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 37, this._ctx);
}
}
break;
}
}
break;
}
}
catch (re) {
if (re instanceof RecognitionException) {
_localctx.exception = re;
this._errHandler.reportError(this, re);
this._errHandler.recover(this, re);
} else {
throw re;
}
}
finally {
this.exitRule();
}
return _localctx;
}
// @RuleVersion(0)
public match_reverse(): Match_reverseContext {
let _localctx: Match_reverseContext = new Match_reverseContext(this._ctx, this.state);
this.enterRule(_localctx, 12, matchParser.RULE_match_reverse);
let _la: number;
try {
let _alt: number;
this.state = 561;
this._errHandler.sync(this);
switch ( this.interpreter.adaptivePredict(this._input, 51, this._ctx) ) {
case 1:
this.enterOuterAlt(_localctx, 1);
{
this.state = 492;
this.match(matchParser.BitMatchrev);
this.state = 493;
this.format();
this.state = 494;
this.match(matchParser.CL);
this.state = 498;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 40, this._ctx);
while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER) {
if (_alt === 1) {
{
{
this.state = 495;
this.match(matchParser.NL);
}
}
}
this.state = 500;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 40, this._ctx);
}
this.state = 510;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 42, this._ctx);
while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER) {
if (_alt === 1) {
{
{
this.state = 501;
this.bitElem();
this.state = 505;
this._errHandler.sync(this);
_alt = this.interpreter.adaptivePredict(this._input, 41, this._ctx);
while (_alt !== 2 && _alt !== ATN.INVALID_ALT_NUMBER) {
if (_alt === 1) {
{
{
this.state = 502;
this.match(matchParser.NL);
}
}