UNPKG

react-openqasm-editor

Version:

A powerful, customizable code editor for OpenQASM (Open Quantum Assembly Language) based on Monaco Editor.

261 lines (240 loc) 14.6 kB
// Generated from lib/antlr/openqasm.g4 by ANTLR 4.9.0-SNAPSHOT // @ts-nocheck import { ATN } from "antlr4ts/atn/ATN"; import { ATNDeserializer } from "antlr4ts/atn/ATNDeserializer"; import { CharStream } from "antlr4ts/CharStream"; import { Lexer } from "antlr4ts/Lexer"; import { LexerATNSimulator } from "antlr4ts/atn/LexerATNSimulator"; import { NotNull } from "antlr4ts/Decorators"; import { Override } from "antlr4ts/Decorators"; import { RuleContext } from "antlr4ts/RuleContext"; import { Vocabulary } from "antlr4ts/Vocabulary"; import { VocabularyImpl } from "antlr4ts/VocabularyImpl"; import * as Utils from "antlr4ts/misc/Utils"; export class openqasmLexer extends Lexer { public static readonly T__0 = 1; public static readonly T__1 = 2; public static readonly T__2 = 3; public static readonly T__3 = 4; public static readonly T__4 = 5; public static readonly T__5 = 6; public static readonly T__6 = 7; public static readonly T__7 = 8; public static readonly T__8 = 9; public static readonly T__9 = 10; public static readonly T__10 = 11; public static readonly T__11 = 12; public static readonly T__12 = 13; public static readonly T__13 = 14; public static readonly T__14 = 15; public static readonly T__15 = 16; public static readonly T__16 = 17; public static readonly T__17 = 18; public static readonly T__18 = 19; public static readonly T__19 = 20; public static readonly T__20 = 21; public static readonly T__21 = 22; public static readonly T__22 = 23; public static readonly T__23 = 24; public static readonly T__24 = 25; public static readonly T__25 = 26; public static readonly T__26 = 27; public static readonly T__27 = 28; public static readonly T__28 = 29; public static readonly T__29 = 30; public static readonly T__30 = 31; public static readonly T__31 = 32; public static readonly T__32 = 33; public static readonly T__33 = 34; public static readonly STRING_LITERAL = 35; public static readonly ID = 36; public static readonly REAL = 37; public static readonly INT = 38; public static readonly WS = 39; public static readonly COMMENT = 40; public static readonly LINE_COMMENT = 41; // tslint:disable:no-trailing-whitespace public static readonly channelNames: string[] = [ "DEFAULT_TOKEN_CHANNEL", "HIDDEN", ]; // tslint:disable:no-trailing-whitespace public static readonly modeNames: string[] = [ "DEFAULT_MODE", ]; public static readonly ruleNames: string[] = [ "T__0", "T__1", "T__2", "T__3", "T__4", "T__5", "T__6", "T__7", "T__8", "T__9", "T__10", "T__11", "T__12", "T__13", "T__14", "T__15", "T__16", "T__17", "T__18", "T__19", "T__20", "T__21", "T__22", "T__23", "T__24", "T__25", "T__26", "T__27", "T__28", "T__29", "T__30", "T__31", "T__32", "T__33", "STRING_LITERAL", "ID", "REAL", "INT", "WS", "COMMENT", "LINE_COMMENT", ]; private static readonly _LITERAL_NAMES: Array<string | undefined> = [ undefined, "'include'", "';'", "'}'", "'opaque'", "'('", "')'", "'if'", "'=='", "'barrier'", "'OPENQASM'", "'qreg'", "'['", "']'", "'creg'", "'gate'", "'{'", "'measure'", "'->'", "'reset'", "'U'", "'CX'", "','", "'pi'", "'+'", "'-'", "'*'", "'/'", "'^'", "'sin'", "'cos'", "'tan'", "'exp'", "'ln'", "'sqrt'", ]; private static readonly _SYMBOLIC_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, undefined, undefined, undefined, undefined, undefined, undefined, undefined, "STRING_LITERAL", "ID", "REAL", "INT", "WS", "COMMENT", "LINE_COMMENT", ]; public static readonly VOCABULARY: Vocabulary = new VocabularyImpl(openqasmLexer._LITERAL_NAMES, openqasmLexer._SYMBOLIC_NAMES, []); // @Override // @NotNull public get vocabulary(): Vocabulary { return openqasmLexer.VOCABULARY; } // tslint:enable:no-trailing-whitespace constructor(input: CharStream) { super(input); this._interp = new LexerATNSimulator(openqasmLexer._ATN, this); } // @Override public get grammarFileName(): string { return "openqasm.g4"; } // @Override public get ruleNames(): string[] { return openqasmLexer.ruleNames; } // @Override public get serializedATN(): string { return openqasmLexer._serializedATN; } // @Override public get channelNames(): string[] { return openqasmLexer.channelNames; } // @Override public get modeNames(): string[] { return openqasmLexer.modeNames; } public static readonly _serializedATN: string = "\x03\uC91D\uCABA\u058D\uAFBA\u4F53\u0607\uEA8B\uC241\x02+\u011F\b\x01" + "\x04\x02\t\x02\x04\x03\t\x03\x04\x04\t\x04\x04\x05\t\x05\x04\x06\t\x06" + "\x04\x07\t\x07\x04\b\t\b\x04\t\t\t\x04\n\t\n\x04\v\t\v\x04\f\t\f\x04\r" + "\t\r\x04\x0E\t\x0E\x04\x0F\t\x0F\x04\x10\t\x10\x04\x11\t\x11\x04\x12\t" + "\x12\x04\x13\t\x13\x04\x14\t\x14\x04\x15\t\x15\x04\x16\t\x16\x04\x17\t" + "\x17\x04\x18\t\x18\x04\x19\t\x19\x04\x1A\t\x1A\x04\x1B\t\x1B\x04\x1C\t" + "\x1C\x04\x1D\t\x1D\x04\x1E\t\x1E\x04\x1F\t\x1F\x04 \t \x04!\t!\x04\"\t" + "\"\x04#\t#\x04$\t$\x04%\t%\x04&\t&\x04\'\t\'\x04(\t(\x04)\t)\x04*\t*\x03" + "\x02\x03\x02\x03\x02\x03\x02\x03\x02\x03\x02\x03\x02\x03\x02\x03\x03\x03" + "\x03\x03\x04\x03\x04\x03\x05\x03\x05\x03\x05\x03\x05\x03\x05\x03\x05\x03" + "\x05\x03\x06\x03\x06\x03\x07\x03\x07\x03\b\x03\b\x03\b\x03\t\x03\t\x03" + "\t\x03\n\x03\n\x03\n\x03\n\x03\n\x03\n\x03\n\x03\n\x03\v\x03\v\x03\v\x03" + "\v\x03\v\x03\v\x03\v\x03\v\x03\v\x03\f\x03\f\x03\f\x03\f\x03\f\x03\r\x03" + "\r\x03\x0E\x03\x0E\x03\x0F\x03\x0F\x03\x0F\x03\x0F\x03\x0F\x03\x10\x03" + "\x10\x03\x10\x03\x10\x03\x10\x03\x11\x03\x11\x03\x12\x03\x12\x03\x12\x03" + "\x12\x03\x12\x03\x12\x03\x12\x03\x12\x03\x13\x03\x13\x03\x13\x03\x14\x03" + "\x14\x03\x14\x03\x14\x03\x14\x03\x14\x03\x15\x03\x15\x03\x16\x03\x16\x03" + "\x16\x03\x17\x03\x17\x03\x18\x03\x18\x03\x18\x03\x19\x03\x19\x03\x1A\x03" + "\x1A\x03\x1B\x03\x1B\x03\x1C\x03\x1C\x03\x1D\x03\x1D\x03\x1E\x03\x1E\x03" + "\x1E\x03\x1E\x03\x1F\x03\x1F\x03\x1F\x03\x1F\x03 \x03 \x03 \x03 \x03!" + "\x03!\x03!\x03!\x03\"\x03\"\x03\"\x03#\x03#\x03#\x03#\x03#\x03$\x03$\x07" + "$\xD8\n$\f$\x0E$\xDB\v$\x03$\x03$\x03%\x03%\x07%\xE1\n%\f%\x0E%\xE4\v" + "%\x03&\x03&\x03&\x06&\xE9\n&\r&\x0E&\xEA\x03&\x03&\x05&\xEF\n&\x03&\x06" + "&\xF2\n&\r&\x0E&\xF3\x05&\xF6\n&\x03\'\x05\'\xF9\n\'\x03\'\x06\'\xFC\n" + "\'\r\'\x0E\'\xFD\x03(\x06(\u0101\n(\r(\x0E(\u0102\x03(\x03(\x03)\x03)" + "\x03)\x03)\x07)\u010B\n)\f)\x0E)\u010E\v)\x03)\x03)\x03)\x03)\x03)\x03" + "*\x03*\x03*\x03*\x07*\u0119\n*\f*\x0E*\u011C\v*\x03*\x03*\x03\u010C\x02" + "\x02+\x03\x02\x03\x05\x02\x04\x07\x02\x05\t\x02\x06\v\x02\x07\r\x02\b" + "\x0F\x02\t\x11\x02\n\x13\x02\v\x15\x02\f\x17\x02\r\x19\x02\x0E\x1B\x02" + "\x0F\x1D\x02\x10\x1F\x02\x11!\x02\x12#\x02\x13%\x02\x14\'\x02\x15)\x02" + "\x16+\x02\x17-\x02\x18/\x02\x191\x02\x1A3\x02\x1B5\x02\x1C7\x02\x1D9\x02" + "\x1E;\x02\x1F=\x02 ?\x02!A\x02\"C\x02#E\x02$G\x02%I\x02&K\x02\'M\x02(" + "O\x02)Q\x02*S\x02+\x03\x02\n\x03\x02$$\x03\x02c|\x06\x022;C\\aac|\x03" + "\x022;\x04\x02GGgg\x04\x02--//\x05\x02\v\f\x0E\x0F\"\"\x04\x02\f\f\x0F" + "\x0F\x02\u0129\x02\x03\x03\x02\x02\x02\x02\x05\x03\x02\x02\x02\x02\x07" + "\x03\x02\x02\x02\x02\t\x03\x02\x02\x02\x02\v\x03\x02\x02\x02\x02\r\x03" + "\x02\x02\x02\x02\x0F\x03\x02\x02\x02\x02\x11\x03\x02\x02\x02\x02\x13\x03" + "\x02\x02\x02\x02\x15\x03\x02\x02\x02\x02\x17\x03\x02\x02\x02\x02\x19\x03" + "\x02\x02\x02\x02\x1B\x03\x02\x02\x02\x02\x1D\x03\x02\x02\x02\x02\x1F\x03" + "\x02\x02\x02\x02!\x03\x02\x02\x02\x02#\x03\x02\x02\x02\x02%\x03\x02\x02" + "\x02\x02\'\x03\x02\x02\x02\x02)\x03\x02\x02\x02\x02+\x03\x02\x02\x02\x02" + "-\x03\x02\x02\x02\x02/\x03\x02\x02\x02\x021\x03\x02\x02\x02\x023\x03\x02" + "\x02\x02\x025\x03\x02\x02\x02\x027\x03\x02\x02\x02\x029\x03\x02\x02\x02" + "\x02;\x03\x02\x02\x02\x02=\x03\x02\x02\x02\x02?\x03\x02\x02\x02\x02A\x03" + "\x02\x02\x02\x02C\x03\x02\x02\x02\x02E\x03\x02\x02\x02\x02G\x03\x02\x02" + "\x02\x02I\x03\x02\x02\x02\x02K\x03\x02\x02\x02\x02M\x03\x02\x02\x02\x02" + "O\x03\x02\x02\x02\x02Q\x03\x02\x02\x02\x02S\x03\x02\x02\x02\x03U\x03\x02" + "\x02\x02\x05]\x03\x02\x02\x02\x07_\x03\x02\x02\x02\ta\x03\x02\x02\x02" + "\vh\x03\x02\x02\x02\rj\x03\x02\x02\x02\x0Fl\x03\x02\x02\x02\x11o\x03\x02" + "\x02\x02\x13r\x03\x02\x02\x02\x15z\x03\x02\x02\x02\x17\x83\x03\x02\x02" + "\x02\x19\x88\x03\x02\x02\x02\x1B\x8A\x03\x02\x02\x02\x1D\x8C\x03\x02\x02" + "\x02\x1F\x91\x03\x02\x02\x02!\x96\x03\x02\x02\x02#\x98\x03\x02\x02\x02" + "%\xA0\x03\x02\x02\x02\'\xA3\x03\x02\x02\x02)\xA9\x03\x02\x02\x02+\xAB" + "\x03\x02\x02\x02-\xAE\x03\x02\x02\x02/\xB0\x03\x02\x02\x021\xB3\x03\x02" + "\x02\x023\xB5\x03\x02\x02\x025\xB7\x03\x02\x02\x027\xB9\x03\x02\x02\x02" + "9\xBB\x03\x02\x02\x02;\xBD\x03\x02\x02\x02=\xC1\x03\x02\x02\x02?\xC5\x03" + "\x02\x02\x02A\xC9\x03\x02\x02\x02C\xCD\x03\x02\x02\x02E\xD0\x03\x02\x02" + "\x02G\xD5\x03\x02\x02\x02I\xDE\x03\x02\x02\x02K\xE5\x03\x02\x02\x02M\xF8" + "\x03\x02\x02\x02O\u0100\x03\x02\x02\x02Q\u0106\x03\x02\x02\x02S\u0114" + "\x03\x02\x02\x02UV\x07k\x02\x02VW\x07p\x02\x02WX\x07e\x02\x02XY\x07n\x02" + "\x02YZ\x07w\x02\x02Z[\x07f\x02\x02[\\\x07g\x02\x02\\\x04\x03\x02\x02\x02" + "]^\x07=\x02\x02^\x06\x03\x02\x02\x02_`\x07\x7F\x02\x02`\b\x03\x02\x02" + "\x02ab\x07q\x02\x02bc\x07r\x02\x02cd\x07c\x02\x02de\x07s\x02\x02ef\x07" + "w\x02\x02fg\x07g\x02\x02g\n\x03\x02\x02\x02hi\x07*\x02\x02i\f\x03\x02" + "\x02\x02jk\x07+\x02\x02k\x0E\x03\x02\x02\x02lm\x07k\x02\x02mn\x07h\x02" + "\x02n\x10\x03\x02\x02\x02op\x07?\x02\x02pq\x07?\x02\x02q\x12\x03\x02\x02" + "\x02rs\x07d\x02\x02st\x07c\x02\x02tu\x07t\x02\x02uv\x07t\x02\x02vw\x07" + "k\x02\x02wx\x07g\x02\x02xy\x07t\x02\x02y\x14\x03\x02\x02\x02z{\x07Q\x02" + "\x02{|\x07R\x02\x02|}\x07G\x02\x02}~\x07P\x02\x02~\x7F\x07S\x02\x02\x7F" + "\x80\x07C\x02\x02\x80\x81\x07U\x02\x02\x81\x82\x07O\x02\x02\x82\x16\x03" + "\x02\x02\x02\x83\x84\x07s\x02\x02\x84\x85\x07t\x02\x02\x85\x86\x07g\x02" + "\x02\x86\x87\x07i\x02\x02\x87\x18\x03\x02\x02\x02\x88\x89\x07]\x02\x02" + "\x89\x1A\x03\x02\x02\x02\x8A\x8B\x07_\x02\x02\x8B\x1C\x03\x02\x02\x02" + "\x8C\x8D\x07e\x02\x02\x8D\x8E\x07t\x02\x02\x8E\x8F\x07g\x02\x02\x8F\x90" + "\x07i\x02\x02\x90\x1E\x03\x02\x02\x02\x91\x92\x07i\x02\x02\x92\x93\x07" + "c\x02\x02\x93\x94\x07v\x02\x02\x94\x95\x07g\x02\x02\x95 \x03\x02\x02\x02" + "\x96\x97\x07}\x02\x02\x97\"\x03\x02\x02\x02\x98\x99\x07o\x02\x02\x99\x9A" + "\x07g\x02\x02\x9A\x9B\x07c\x02\x02\x9B\x9C\x07u\x02\x02\x9C\x9D\x07w\x02" + "\x02\x9D\x9E\x07t\x02\x02\x9E\x9F\x07g\x02\x02\x9F$\x03\x02\x02\x02\xA0" + "\xA1\x07/\x02\x02\xA1\xA2\x07@\x02\x02\xA2&\x03\x02\x02\x02\xA3\xA4\x07" + "t\x02\x02\xA4\xA5\x07g\x02\x02\xA5\xA6\x07u\x02\x02\xA6\xA7\x07g\x02\x02" + "\xA7\xA8\x07v\x02\x02\xA8(\x03\x02\x02\x02\xA9\xAA\x07W\x02\x02\xAA*\x03" + "\x02\x02\x02\xAB\xAC\x07E\x02\x02\xAC\xAD\x07Z\x02\x02\xAD,\x03\x02\x02" + "\x02\xAE\xAF\x07.\x02\x02\xAF.\x03\x02\x02\x02\xB0\xB1\x07r\x02\x02\xB1" + "\xB2\x07k\x02\x02\xB20\x03\x02\x02\x02\xB3\xB4\x07-\x02\x02\xB42\x03\x02" + "\x02\x02\xB5\xB6\x07/\x02\x02\xB64\x03\x02\x02\x02\xB7\xB8\x07,\x02\x02" + "\xB86\x03\x02\x02\x02\xB9\xBA\x071\x02\x02\xBA8\x03\x02\x02\x02\xBB\xBC" + "\x07`\x02\x02\xBC:\x03\x02\x02\x02\xBD\xBE\x07u\x02\x02\xBE\xBF\x07k\x02" + "\x02\xBF\xC0\x07p\x02\x02\xC0<\x03\x02\x02\x02\xC1\xC2\x07e\x02\x02\xC2" + "\xC3\x07q\x02\x02\xC3\xC4\x07u\x02\x02\xC4>\x03\x02\x02\x02\xC5\xC6\x07" + "v\x02\x02\xC6\xC7\x07c\x02\x02\xC7\xC8\x07p\x02\x02\xC8@\x03\x02\x02\x02" + "\xC9\xCA\x07g\x02\x02\xCA\xCB\x07z\x02\x02\xCB\xCC\x07r\x02\x02\xCCB\x03" + "\x02\x02\x02\xCD\xCE\x07n\x02\x02\xCE\xCF\x07p\x02\x02\xCFD\x03\x02\x02" + "\x02\xD0\xD1\x07u\x02\x02\xD1\xD2\x07s\x02\x02\xD2\xD3\x07t\x02\x02\xD3" + "\xD4\x07v\x02\x02\xD4F\x03\x02\x02\x02\xD5\xD9\x07$\x02\x02\xD6\xD8\n" + "\x02\x02\x02\xD7\xD6\x03\x02\x02\x02\xD8\xDB\x03\x02\x02\x02\xD9\xD7\x03" + "\x02\x02\x02\xD9\xDA\x03\x02\x02\x02\xDA\xDC\x03\x02\x02\x02\xDB\xD9\x03" + "\x02\x02\x02\xDC\xDD\x07$\x02\x02\xDDH\x03\x02\x02\x02\xDE\xE2\t\x03\x02" + "\x02\xDF\xE1\t\x04\x02\x02\xE0\xDF\x03\x02\x02\x02\xE1\xE4\x03\x02\x02" + "\x02\xE2\xE0\x03\x02\x02\x02\xE2\xE3\x03\x02\x02\x02\xE3J\x03\x02\x02" + "\x02\xE4\xE2\x03\x02\x02\x02\xE5\xE6\x05M\'\x02\xE6\xE8\x070\x02\x02\xE7" + "\xE9\t\x05\x02\x02\xE8\xE7\x03\x02\x02\x02\xE9\xEA\x03\x02\x02\x02\xEA" + "\xE8\x03\x02\x02\x02\xEA\xEB\x03\x02\x02\x02\xEB\xF5\x03\x02\x02\x02\xEC" + "\xEE\t\x06\x02\x02\xED\xEF\t\x07\x02\x02\xEE\xED\x03\x02\x02\x02\xEE\xEF" + "\x03\x02\x02\x02\xEF\xF1\x03\x02\x02\x02\xF0\xF2\t\x05\x02\x02\xF1\xF0" + "\x03\x02\x02\x02\xF2\xF3\x03\x02\x02\x02\xF3\xF1\x03\x02\x02\x02\xF3\xF4" + "\x03\x02\x02\x02\xF4\xF6\x03\x02\x02\x02\xF5\xEC\x03\x02\x02\x02\xF5\xF6" + "\x03\x02\x02\x02\xF6L\x03\x02\x02\x02\xF7\xF9\t\x07\x02\x02\xF8\xF7\x03" + "\x02\x02\x02\xF8\xF9\x03\x02\x02\x02\xF9\xFB\x03\x02\x02\x02\xFA\xFC\t" + "\x05\x02\x02\xFB\xFA\x03\x02\x02\x02\xFC\xFD\x03\x02\x02\x02\xFD\xFB\x03" + "\x02\x02\x02\xFD\xFE\x03\x02\x02\x02\xFEN\x03\x02\x02\x02\xFF\u0101\t" + "\b\x02\x02\u0100\xFF\x03\x02\x02\x02\u0101\u0102\x03\x02\x02\x02\u0102" + "\u0100\x03\x02\x02\x02\u0102\u0103\x03\x02\x02\x02\u0103\u0104\x03\x02" + "\x02\x02\u0104\u0105\b(\x02\x02\u0105P\x03\x02\x02\x02\u0106\u0107\x07" + "1\x02\x02\u0107\u0108\x07,\x02\x02\u0108\u010C\x03\x02\x02\x02\u0109\u010B" + "\v\x02\x02\x02\u010A\u0109\x03\x02\x02\x02\u010B\u010E\x03\x02\x02\x02" + "\u010C\u010D\x03\x02\x02\x02\u010C\u010A\x03\x02\x02\x02\u010D\u010F\x03" + "\x02\x02\x02\u010E\u010C\x03\x02\x02\x02\u010F\u0110\x07,\x02\x02\u0110" + "\u0111\x071\x02\x02\u0111\u0112\x03\x02\x02\x02\u0112\u0113\b)\x03\x02" + "\u0113R\x03\x02\x02\x02\u0114\u0115\x071\x02\x02\u0115\u0116\x071\x02" + "\x02\u0116\u011A\x03\x02\x02\x02\u0117\u0119\n\t\x02\x02\u0118\u0117\x03" + "\x02\x02\x02\u0119\u011C\x03\x02\x02\x02\u011A\u0118\x03\x02\x02\x02\u011A" + "\u011B\x03\x02\x02\x02\u011B\u011D\x03\x02\x02\x02\u011C\u011A\x03\x02" + "\x02\x02\u011D\u011E\b*\x03\x02\u011ET\x03\x02\x02\x02\x0E\x02\xD9\xE2" + "\xEA\xEE\xF3\xF5\xF8\xFD\u0102\u010C\u011A\x04\b\x02\x02\x02\x03\x02"; public static __ATN: ATN; public static get _ATN(): ATN { if (!openqasmLexer.__ATN) { openqasmLexer.__ATN = new ATNDeserializer().deserialize(Utils.toCharArray(openqasmLexer._serializedATN)); } return openqasmLexer.__ATN; } }