quantum-circuit
Version:
Quantum Circuit Simulator
292 lines (272 loc) • 17.9 kB
JavaScript
// Generated from QASM.g4 by ANTLR 4.7.1
// jshint ignore: start
var antlr4 = require('antlr4/index');
var serializedATN = ["\u0003\u608b\ua72a\u8133\ub9ed\u417c\u3be7\u7786\u5964",
"\u0002-\u0124\b\u0001\u0004\u0002\t\u0002\u0004\u0003\t\u0003\u0004",
"\u0004\t\u0004\u0004\u0005\t\u0005\u0004\u0006\t\u0006\u0004\u0007\t",
"\u0007\u0004\b\t\b\u0004\t\t\t\u0004\n\t\n\u0004\u000b\t\u000b\u0004",
"\f\t\f\u0004\r\t\r\u0004\u000e\t\u000e\u0004\u000f\t\u000f\u0004\u0010",
"\t\u0010\u0004\u0011\t\u0011\u0004\u0012\t\u0012\u0004\u0013\t\u0013",
"\u0004\u0014\t\u0014\u0004\u0015\t\u0015\u0004\u0016\t\u0016\u0004\u0017",
"\t\u0017\u0004\u0018\t\u0018\u0004\u0019\t\u0019\u0004\u001a\t\u001a",
"\u0004\u001b\t\u001b\u0004\u001c\t\u001c\u0004\u001d\t\u001d\u0004\u001e",
"\t\u001e\u0004\u001f\t\u001f\u0004 \t \u0004!\t!\u0004\"\t\"\u0004#",
"\t#\u0004$\t$\u0004%\t%\u0004&\t&\u0004\'\t\'\u0004(\t(\u0004)\t)\u0004",
"*\t*\u0004+\t+\u0004,\t,\u0003\u0002\u0003\u0002\u0003\u0003\u0003\u0003",
"\u0003\u0003\u0003\u0003\u0003\u0003\u0003\u0003\u0003\u0003\u0003\u0004",
"\u0003\u0004\u0003\u0005\u0003\u0005\u0003\u0006\u0003\u0006\u0003\u0007",
"\u0003\u0007\u0003\u0007\u0003\b\u0003\b\u0003\b\u0003\t\u0003\t\u0003",
"\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\n\u0003\n\u0003\n\u0003",
"\n\u0003\n\u0003\n\u0003\n\u0003\n\u0003\n\u0003\u000b\u0003\u000b\u0003",
"\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003",
"\f\u0003\f\u0003\f\u0003\f\u0003\f\u0003\r\u0003\r\u0003\u000e\u0003",
"\u000e\u0003\u000f\u0003\u000f\u0003\u000f\u0003\u000f\u0003\u000f\u0003",
"\u0010\u0003\u0010\u0003\u0010\u0003\u0010\u0003\u0010\u0003\u0011\u0003",
"\u0011\u0003\u0012\u0003\u0012\u0003\u0012\u0003\u0012\u0003\u0012\u0003",
"\u0012\u0003\u0012\u0003\u0012\u0003\u0013\u0003\u0013\u0003\u0013\u0003",
"\u0014\u0003\u0014\u0003\u0014\u0003\u0014\u0003\u0014\u0003\u0014\u0003",
"\u0015\u0003\u0015\u0003\u0016\u0003\u0016\u0003\u0016\u0003\u0017\u0003",
"\u0017\u0003\u0018\u0003\u0018\u0003\u0019\u0003\u0019\u0003\u001a\u0003",
"\u001a\u0003\u001b\u0003\u001b\u0003\u001c\u0003\u001c\u0003\u001d\u0003",
"\u001d\u0003\u001d\u0003\u001d\u0003\u001e\u0003\u001e\u0003\u001e\u0003",
"\u001e\u0003\u001f\u0003\u001f\u0003\u001f\u0003\u001f\u0003 \u0003",
" \u0003 \u0003 \u0003!\u0003!\u0003!\u0003\"\u0003\"\u0003\"\u0003\"",
"\u0003\"\u0003#\u0003#\u0003#\u0003$\u0003$\u0003$\u0003$\u0003$\u0003",
"$\u0003$\u0005$\u00e1\n$\u0003%\u0003%\u0003%\u0006%\u00e6\n%\r%\u000e",
"%\u00e7\u0003&\u0003&\u0003&\u0006&\u00ed\n&\r&\u000e&\u00ee\u0003\'",
"\u0006\'\u00f2\n\'\r\'\u000e\'\u00f3\u0003(\u0003(\u0007(\u00f8\n(\f",
"(\u000e(\u00fb\u000b(\u0003)\u0006)\u00fe\n)\r)\u000e)\u00ff\u0003)",
"\u0003)\u0003*\u0003*\u0006*\u0106\n*\r*\u000e*\u0107\u0003*\u0003*",
"\u0003+\u0003+\u0003+\u0003+\u0007+\u0110\n+\f+\u000e+\u0113\u000b+",
"\u0003+\u0003+\u0003+\u0003+\u0003+\u0003,\u0003,\u0003,\u0003,\u0007",
",\u011e\n,\f,\u000e,\u0121\u000b,\u0003,\u0003,\u0003\u0111\u0002-\u0003",
"\u0003\u0005\u0004\u0007\u0005\t\u0006\u000b\u0007\r\b\u000f\t\u0011",
"\n\u0013\u000b\u0015\f\u0017\r\u0019\u000e\u001b\u000f\u001d\u0010\u001f",
"\u0011!\u0012#\u0013%\u0014\'\u0015)\u0016+\u0017-\u0018/\u00191\u001a",
"3\u001b5\u001c7\u001d9\u001e;\u001f= ?!A\"C#E$G%I&K\'M(O)Q*S+U,W-\u0003",
"\u0002\n\u0003\u00022;\u0004\u0002GGgg\u0004\u0002--//\u0003\u0002c",
"|\u0006\u00022;C\\aac|\u0005\u0002\u000b\f\u000e\u000f\"\"\u0007\u0002",
"/02;C\\aac|\u0004\u0002\f\f\u000f\u000f\u0002\u012d\u0002\u0003\u0003",
"\u0002\u0002\u0002\u0002\u0005\u0003\u0002\u0002\u0002\u0002\u0007\u0003",
"\u0002\u0002\u0002\u0002\t\u0003\u0002\u0002\u0002\u0002\u000b\u0003",
"\u0002\u0002\u0002\u0002\r\u0003\u0002\u0002\u0002\u0002\u000f\u0003",
"\u0002\u0002\u0002\u0002\u0011\u0003\u0002\u0002\u0002\u0002\u0013\u0003",
"\u0002\u0002\u0002\u0002\u0015\u0003\u0002\u0002\u0002\u0002\u0017\u0003",
"\u0002\u0002\u0002\u0002\u0019\u0003\u0002\u0002\u0002\u0002\u001b\u0003",
"\u0002\u0002\u0002\u0002\u001d\u0003\u0002\u0002\u0002\u0002\u001f\u0003",
"\u0002\u0002\u0002\u0002!\u0003\u0002\u0002\u0002\u0002#\u0003\u0002",
"\u0002\u0002\u0002%\u0003\u0002\u0002\u0002\u0002\'\u0003\u0002\u0002",
"\u0002\u0002)\u0003\u0002\u0002\u0002\u0002+\u0003\u0002\u0002\u0002",
"\u0002-\u0003\u0002\u0002\u0002\u0002/\u0003\u0002\u0002\u0002\u0002",
"1\u0003\u0002\u0002\u0002\u00023\u0003\u0002\u0002\u0002\u00025\u0003",
"\u0002\u0002\u0002\u00027\u0003\u0002\u0002\u0002\u00029\u0003\u0002",
"\u0002\u0002\u0002;\u0003\u0002\u0002\u0002\u0002=\u0003\u0002\u0002",
"\u0002\u0002?\u0003\u0002\u0002\u0002\u0002A\u0003\u0002\u0002\u0002",
"\u0002C\u0003\u0002\u0002\u0002\u0002E\u0003\u0002\u0002\u0002\u0002",
"G\u0003\u0002\u0002\u0002\u0002I\u0003\u0002\u0002\u0002\u0002K\u0003",
"\u0002\u0002\u0002\u0002M\u0003\u0002\u0002\u0002\u0002O\u0003\u0002",
"\u0002\u0002\u0002Q\u0003\u0002\u0002\u0002\u0002S\u0003\u0002\u0002",
"\u0002\u0002U\u0003\u0002\u0002\u0002\u0002W\u0003\u0002\u0002\u0002",
"\u0003Y\u0003\u0002\u0002\u0002\u0005[\u0003\u0002\u0002\u0002\u0007",
"b\u0003\u0002\u0002\u0002\td\u0003\u0002\u0002\u0002\u000bf\u0003\u0002",
"\u0002\u0002\rh\u0003\u0002\u0002\u0002\u000fk\u0003\u0002\u0002\u0002",
"\u0011n\u0003\u0002\u0002\u0002\u0013v\u0003\u0002\u0002\u0002\u0015",
"\u007f\u0003\u0002\u0002\u0002\u0017\u0087\u0003\u0002\u0002\u0002\u0019",
"\u008c\u0003\u0002\u0002\u0002\u001b\u008e\u0003\u0002\u0002\u0002\u001d",
"\u0090\u0003\u0002\u0002\u0002\u001f\u0095\u0003\u0002\u0002\u0002!",
"\u009a\u0003\u0002\u0002\u0002#\u009c\u0003\u0002\u0002\u0002%\u00a4",
"\u0003\u0002\u0002\u0002\'\u00a7\u0003\u0002\u0002\u0002)\u00ad\u0003",
"\u0002\u0002\u0002+\u00af\u0003\u0002\u0002\u0002-\u00b2\u0003\u0002",
"\u0002\u0002/\u00b4\u0003\u0002\u0002\u00021\u00b6\u0003\u0002\u0002",
"\u00023\u00b8\u0003\u0002\u0002\u00025\u00ba\u0003\u0002\u0002\u0002",
"7\u00bc\u0003\u0002\u0002\u00029\u00be\u0003\u0002\u0002\u0002;\u00c2",
"\u0003\u0002\u0002\u0002=\u00c6\u0003\u0002\u0002\u0002?\u00ca\u0003",
"\u0002\u0002\u0002A\u00ce\u0003\u0002\u0002\u0002C\u00d1\u0003\u0002",
"\u0002\u0002E\u00d6\u0003\u0002\u0002\u0002G\u00e0\u0003\u0002\u0002",
"\u0002I\u00e2\u0003\u0002\u0002\u0002K\u00e9\u0003\u0002\u0002\u0002",
"M\u00f1\u0003\u0002\u0002\u0002O\u00f5\u0003\u0002\u0002\u0002Q\u00fd",
"\u0003\u0002\u0002\u0002S\u0103\u0003\u0002\u0002\u0002U\u010b\u0003",
"\u0002\u0002\u0002W\u0119\u0003\u0002\u0002\u0002YZ\u0007\u007f\u0002",
"\u0002Z\u0004\u0003\u0002\u0002\u0002[\\\u0007q\u0002\u0002\\]\u0007",
"r\u0002\u0002]^\u0007c\u0002\u0002^_\u0007s\u0002\u0002_`\u0007w\u0002",
"\u0002`a\u0007g\u0002\u0002a\u0006\u0003\u0002\u0002\u0002bc\u0007=",
"\u0002\u0002c\b\u0003\u0002\u0002\u0002de\u0007*\u0002\u0002e\n\u0003",
"\u0002\u0002\u0002fg\u0007+\u0002\u0002g\f\u0003\u0002\u0002\u0002h",
"i\u0007k\u0002\u0002ij\u0007h\u0002\u0002j\u000e\u0003\u0002\u0002\u0002",
"kl\u0007?\u0002\u0002lm\u0007?\u0002\u0002m\u0010\u0003\u0002\u0002",
"\u0002no\u0007d\u0002\u0002op\u0007c\u0002\u0002pq\u0007t\u0002\u0002",
"qr\u0007t\u0002\u0002rs\u0007k\u0002\u0002st\u0007g\u0002\u0002tu\u0007",
"t\u0002\u0002u\u0012\u0003\u0002\u0002\u0002vw\u0007Q\u0002\u0002wx",
"\u0007R\u0002\u0002xy\u0007G\u0002\u0002yz\u0007P\u0002\u0002z{\u0007",
"S\u0002\u0002{|\u0007C\u0002\u0002|}\u0007U\u0002\u0002}~\u0007O\u0002",
"\u0002~\u0014\u0003\u0002\u0002\u0002\u007f\u0080\u0007k\u0002\u0002",
"\u0080\u0081\u0007p\u0002\u0002\u0081\u0082\u0007e\u0002\u0002\u0082",
"\u0083\u0007n\u0002\u0002\u0083\u0084\u0007w\u0002\u0002\u0084\u0085",
"\u0007f\u0002\u0002\u0085\u0086\u0007g\u0002\u0002\u0086\u0016\u0003",
"\u0002\u0002\u0002\u0087\u0088\u0007s\u0002\u0002\u0088\u0089\u0007",
"t\u0002\u0002\u0089\u008a\u0007g\u0002\u0002\u008a\u008b\u0007i\u0002",
"\u0002\u008b\u0018\u0003\u0002\u0002\u0002\u008c\u008d\u0007]\u0002",
"\u0002\u008d\u001a\u0003\u0002\u0002\u0002\u008e\u008f\u0007_\u0002",
"\u0002\u008f\u001c\u0003\u0002\u0002\u0002\u0090\u0091\u0007e\u0002",
"\u0002\u0091\u0092\u0007t\u0002\u0002\u0092\u0093\u0007g\u0002\u0002",
"\u0093\u0094\u0007i\u0002\u0002\u0094\u001e\u0003\u0002\u0002\u0002",
"\u0095\u0096\u0007i\u0002\u0002\u0096\u0097\u0007c\u0002\u0002\u0097",
"\u0098\u0007v\u0002\u0002\u0098\u0099\u0007g\u0002\u0002\u0099 \u0003",
"\u0002\u0002\u0002\u009a\u009b\u0007}\u0002\u0002\u009b\"\u0003\u0002",
"\u0002\u0002\u009c\u009d\u0007o\u0002\u0002\u009d\u009e\u0007g\u0002",
"\u0002\u009e\u009f\u0007c\u0002\u0002\u009f\u00a0\u0007u\u0002\u0002",
"\u00a0\u00a1\u0007w\u0002\u0002\u00a1\u00a2\u0007t\u0002\u0002\u00a2",
"\u00a3\u0007g\u0002\u0002\u00a3$\u0003\u0002\u0002\u0002\u00a4\u00a5",
"\u0007/\u0002\u0002\u00a5\u00a6\u0007@\u0002\u0002\u00a6&\u0003\u0002",
"\u0002\u0002\u00a7\u00a8\u0007t\u0002\u0002\u00a8\u00a9\u0007g\u0002",
"\u0002\u00a9\u00aa\u0007u\u0002\u0002\u00aa\u00ab\u0007g\u0002\u0002",
"\u00ab\u00ac\u0007v\u0002\u0002\u00ac(\u0003\u0002\u0002\u0002\u00ad",
"\u00ae\u0007W\u0002\u0002\u00ae*\u0003\u0002\u0002\u0002\u00af\u00b0",
"\u0007E\u0002\u0002\u00b0\u00b1\u0007Z\u0002\u0002\u00b1,\u0003\u0002",
"\u0002\u0002\u00b2\u00b3\u0007.\u0002\u0002\u00b3.\u0003\u0002\u0002",
"\u0002\u00b4\u00b5\u0007`\u0002\u0002\u00b50\u0003\u0002\u0002\u0002",
"\u00b6\u00b7\u0007,\u0002\u0002\u00b72\u0003\u0002\u0002\u0002\u00b8",
"\u00b9\u00071\u0002\u0002\u00b94\u0003\u0002\u0002\u0002\u00ba\u00bb",
"\u0007-\u0002\u0002\u00bb6\u0003\u0002\u0002\u0002\u00bc\u00bd\u0007",
"/\u0002\u0002\u00bd8\u0003\u0002\u0002\u0002\u00be\u00bf\u0007u\u0002",
"\u0002\u00bf\u00c0\u0007k\u0002\u0002\u00c0\u00c1\u0007p\u0002\u0002",
"\u00c1:\u0003\u0002\u0002\u0002\u00c2\u00c3\u0007e\u0002\u0002\u00c3",
"\u00c4\u0007q\u0002\u0002\u00c4\u00c5\u0007u\u0002\u0002\u00c5<\u0003",
"\u0002\u0002\u0002\u00c6\u00c7\u0007v\u0002\u0002\u00c7\u00c8\u0007",
"c\u0002\u0002\u00c8\u00c9\u0007p\u0002\u0002\u00c9>\u0003\u0002\u0002",
"\u0002\u00ca\u00cb\u0007g\u0002\u0002\u00cb\u00cc\u0007z\u0002\u0002",
"\u00cc\u00cd\u0007r\u0002\u0002\u00cd@\u0003\u0002\u0002\u0002\u00ce",
"\u00cf\u0007n\u0002\u0002\u00cf\u00d0\u0007p\u0002\u0002\u00d0B\u0003",
"\u0002\u0002\u0002\u00d1\u00d2\u0007u\u0002\u0002\u00d2\u00d3\u0007",
"s\u0002\u0002\u00d3\u00d4\u0007t\u0002\u0002\u00d4\u00d5\u0007v\u0002",
"\u0002\u00d5D\u0003\u0002\u0002\u0002\u00d6\u00d7\u0007r\u0002\u0002",
"\u00d7\u00d8\u0007k\u0002\u0002\u00d8F\u0003\u0002\u0002\u0002\u00d9",
"\u00da\u0005I%\u0002\u00da\u00db\u0005K&\u0002\u00db\u00e1\u0003\u0002",
"\u0002\u0002\u00dc\u00dd\u0005M\'\u0002\u00dd\u00de\u0005K&\u0002\u00de",
"\u00e1\u0003\u0002\u0002\u0002\u00df\u00e1\u0005I%\u0002\u00e0\u00d9",
"\u0003\u0002\u0002\u0002\u00e0\u00dc\u0003\u0002\u0002\u0002\u00e0\u00df",
"\u0003\u0002\u0002\u0002\u00e1H\u0003\u0002\u0002\u0002\u00e2\u00e3",
"\u0005M\'\u0002\u00e3\u00e5\u00070\u0002\u0002\u00e4\u00e6\t\u0002\u0002",
"\u0002\u00e5\u00e4\u0003\u0002\u0002\u0002\u00e6\u00e7\u0003\u0002\u0002",
"\u0002\u00e7\u00e5\u0003\u0002\u0002\u0002\u00e7\u00e8\u0003\u0002\u0002",
"\u0002\u00e8J\u0003\u0002\u0002\u0002\u00e9\u00ea\t\u0003\u0002\u0002",
"\u00ea\u00ec\t\u0004\u0002\u0002\u00eb\u00ed\t\u0002\u0002\u0002\u00ec",
"\u00eb\u0003\u0002\u0002\u0002\u00ed\u00ee\u0003\u0002\u0002\u0002\u00ee",
"\u00ec\u0003\u0002\u0002\u0002\u00ee\u00ef\u0003\u0002\u0002\u0002\u00ef",
"L\u0003\u0002\u0002\u0002\u00f0\u00f2\t\u0002\u0002\u0002\u00f1\u00f0",
"\u0003\u0002\u0002\u0002\u00f2\u00f3\u0003\u0002\u0002\u0002\u00f3\u00f1",
"\u0003\u0002\u0002\u0002\u00f3\u00f4\u0003\u0002\u0002\u0002\u00f4N",
"\u0003\u0002\u0002\u0002\u00f5\u00f9\t\u0005\u0002\u0002\u00f6\u00f8",
"\t\u0006\u0002\u0002\u00f7\u00f6\u0003\u0002\u0002\u0002\u00f8\u00fb",
"\u0003\u0002\u0002\u0002\u00f9\u00f7\u0003\u0002\u0002\u0002\u00f9\u00fa",
"\u0003\u0002\u0002\u0002\u00faP\u0003\u0002\u0002\u0002\u00fb\u00f9",
"\u0003\u0002\u0002\u0002\u00fc\u00fe\t\u0007\u0002\u0002\u00fd\u00fc",
"\u0003\u0002\u0002\u0002\u00fe\u00ff\u0003\u0002\u0002\u0002\u00ff\u00fd",
"\u0003\u0002\u0002\u0002\u00ff\u0100\u0003\u0002\u0002\u0002\u0100\u0101",
"\u0003\u0002\u0002\u0002\u0101\u0102\b)\u0002\u0002\u0102R\u0003\u0002",
"\u0002\u0002\u0103\u0105\u0007$\u0002\u0002\u0104\u0106\t\b\u0002\u0002",
"\u0105\u0104\u0003\u0002\u0002\u0002\u0106\u0107\u0003\u0002\u0002\u0002",
"\u0107\u0105\u0003\u0002\u0002\u0002\u0107\u0108\u0003\u0002\u0002\u0002",
"\u0108\u0109\u0003\u0002\u0002\u0002\u0109\u010a\u0007$\u0002\u0002",
"\u010aT\u0003\u0002\u0002\u0002\u010b\u010c\u00071\u0002\u0002\u010c",
"\u010d\u0007,\u0002\u0002\u010d\u0111\u0003\u0002\u0002\u0002\u010e",
"\u0110\u000b\u0002\u0002\u0002\u010f\u010e\u0003\u0002\u0002\u0002\u0110",
"\u0113\u0003\u0002\u0002\u0002\u0111\u0112\u0003\u0002\u0002\u0002\u0111",
"\u010f\u0003\u0002\u0002\u0002\u0112\u0114\u0003\u0002\u0002\u0002\u0113",
"\u0111\u0003\u0002\u0002\u0002\u0114\u0115\u0007,\u0002\u0002\u0115",
"\u0116\u00071\u0002\u0002\u0116\u0117\u0003\u0002\u0002\u0002\u0117",
"\u0118\b+\u0002\u0002\u0118V\u0003\u0002\u0002\u0002\u0119\u011a\u0007",
"1\u0002\u0002\u011a\u011b\u00071\u0002\u0002\u011b\u011f\u0003\u0002",
"\u0002\u0002\u011c\u011e\n\t\u0002\u0002\u011d\u011c\u0003\u0002\u0002",
"\u0002\u011e\u0121\u0003\u0002\u0002\u0002\u011f\u011d\u0003\u0002\u0002",
"\u0002\u011f\u0120\u0003\u0002\u0002\u0002\u0120\u0122\u0003\u0002\u0002",
"\u0002\u0121\u011f\u0003\u0002\u0002\u0002\u0122\u0123\b,\u0002\u0002",
"\u0123X\u0003\u0002\u0002\u0002\f\u0002\u00e0\u00e7\u00ee\u00f3\u00f9",
"\u00ff\u0107\u0111\u011f\u0003\b\u0002\u0002"].join("");
var atn = new antlr4.atn.ATNDeserializer().deserialize(serializedATN);
var decisionsToDFA = atn.decisionToState.map( function(ds, index) { return new antlr4.dfa.DFA(ds, index); });
function QASMLexer(input) {
antlr4.Lexer.call(this, input);
this._interp = new antlr4.atn.LexerATNSimulator(this, atn, decisionsToDFA, new antlr4.PredictionContextCache());
return this;
}
QASMLexer.prototype = Object.create(antlr4.Lexer.prototype);
QASMLexer.prototype.constructor = QASMLexer;
Object.defineProperty(QASMLexer.prototype, "atn", {
get : function() {
return atn;
}
});
QASMLexer.EOF = antlr4.Token.EOF;
QASMLexer.T__0 = 1;
QASMLexer.T__1 = 2;
QASMLexer.T__2 = 3;
QASMLexer.T__3 = 4;
QASMLexer.T__4 = 5;
QASMLexer.T__5 = 6;
QASMLexer.T__6 = 7;
QASMLexer.T__7 = 8;
QASMLexer.T__8 = 9;
QASMLexer.T__9 = 10;
QASMLexer.T__10 = 11;
QASMLexer.T__11 = 12;
QASMLexer.T__12 = 13;
QASMLexer.T__13 = 14;
QASMLexer.T__14 = 15;
QASMLexer.T__15 = 16;
QASMLexer.T__16 = 17;
QASMLexer.T__17 = 18;
QASMLexer.T__18 = 19;
QASMLexer.T__19 = 20;
QASMLexer.T__20 = 21;
QASMLexer.T__21 = 22;
QASMLexer.T__22 = 23;
QASMLexer.T__23 = 24;
QASMLexer.T__24 = 25;
QASMLexer.T__25 = 26;
QASMLexer.T__26 = 27;
QASMLexer.T__27 = 28;
QASMLexer.T__28 = 29;
QASMLexer.T__29 = 30;
QASMLexer.T__30 = 31;
QASMLexer.T__31 = 32;
QASMLexer.T__32 = 33;
QASMLexer.PI = 34;
QASMLexer.REAL = 35;
QASMLexer.SUBREAL = 36;
QASMLexer.EXPREAL = 37;
QASMLexer.INT = 38;
QASMLexer.ID = 39;
QASMLexer.WS = 40;
QASMLexer.FILENAME = 41;
QASMLexer.COMMENT = 42;
QASMLexer.LINE_COMMENT = 43;
QASMLexer.prototype.channelNames = [ "DEFAULT_TOKEN_CHANNEL", "HIDDEN" ];
QASMLexer.prototype.modeNames = [ "DEFAULT_MODE" ];
QASMLexer.prototype.literalNames = [ null, "'}'", "'opaque'", "';'", "'('",
"')'", "'if'", "'=='", "'barrier'",
"'OPENQASM'", "'include'", "'qreg'",
"'['", "']'", "'creg'", "'gate'", "'{'",
"'measure'", "'->'", "'reset'", "'U'",
"'CX'", "','", "'^'", "'*'", "'/'",
"'+'", "'-'", "'sin'", "'cos'", "'tan'",
"'exp'", "'ln'", "'sqrt'", "'pi'" ];
QASMLexer.prototype.symbolicNames = [ null, null, null, null, null, null,
null, null, null, null, null, null,
null, null, null, null, null, null,
null, null, null, null, null, null,
null, null, null, null, null, null,
null, null, null, null, "PI", "REAL",
"SUBREAL", "EXPREAL", "INT", "ID",
"WS", "FILENAME", "COMMENT", "LINE_COMMENT" ];
QASMLexer.prototype.ruleNames = [ "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", "PI", "REAL",
"SUBREAL", "EXPREAL", "INT", "ID", "WS",
"FILENAME", "COMMENT", "LINE_COMMENT" ];
QASMLexer.prototype.grammarFileName = "QASM.g4";
exports.QASMLexer = QASMLexer;