UNPKG

univac

Version:

Generate AST of lots of common programming languages using antlr4. JavaScript API and CLI tool.

224 lines (203 loc) 13.5 kB
// @ts-nocheck // Generated from Smalltalk.g4 by ANTLR 4.7.2 // jshint ignore: start var antlr4 = require('antlr4/index'); var serializedATN = ["\u0003\u608b\ua72a\u8133\ub9ed\u417c\u3be7\u7786\u5964", "\u0002\"\u00bc\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!\u0003\u0002\u0003\u0002", "\u0003\u0003\u0003\u0003\u0007\u0003H\n\u0003\f\u0003\u000e\u0003K\u000b", "\u0003\u0003\u0003\u0003\u0003\u0003\u0004\u0003\u0004\u0007\u0004Q", "\n\u0004\f\u0004\u000e\u0004T\u000b\u0004\u0003\u0004\u0003\u0004\u0003", "\u0005\u0003\u0005\u0003\u0006\u0003\u0006\u0003\u0007\u0003\u0007\u0003", "\b\u0003\b\u0003\t\u0003\t\u0003\n\u0003\n\u0003\u000b\u0003\u000b\u0003", "\f\u0003\f\u0003\f\u0006\fi\n\f\r\f\u000e\fj\u0003\r\u0003\r\u0003\u000e", "\u0003\u000e\u0003\u000f\u0003\u000f\u0003\u0010\u0003\u0010\u0003\u0010", "\u0003\u0010\u0003\u0010\u0003\u0010\u0003\u0010\u0003\u0010\u0003\u0010", "\u0003\u0010\u0003\u0010\u0003\u0010\u0003\u0010\u0003\u0010\u0003\u0010", "\u0003\u0010\u0003\u0010\u0003\u0010\u0003\u0010\u0003\u0010\u0003\u0010", "\u0005\u0010\u0088\n\u0010\u0003\u0011\u0006\u0011\u008b\n\u0011\r\u0011", "\u000e\u0011\u008c\u0003\u0011\u0007\u0011\u0090\n\u0011\f\u0011\u000e", "\u0011\u0093\u000b\u0011\u0003\u0012\u0003\u0012\u0003\u0013\u0003\u0013", "\u0003\u0014\u0003\u0014\u0003\u0014\u0003\u0015\u0003\u0015\u0003\u0016", "\u0003\u0016\u0003\u0017\u0003\u0017\u0003\u0018\u0003\u0018\u0003\u0018", "\u0003\u0018\u0003\u0019\u0003\u0019\u0003\u0019\u0003\u001a\u0003\u001a", "\u0003\u001a\u0003\u001b\u0003\u001b\u0003\u001c\u0003\u001c\u0003\u001d", "\u0003\u001d\u0003\u001e\u0003\u001e\u0003\u001f\u0003\u001f\u0003\u001f", "\u0003 \u0003 \u0003 \u0003!\u0003!\u0003!\u0004IR\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\u001a3\u001b", "5\u001c7\u001d9\u001e;\u001f= ?!A\"\u0003\u0002\t\u0005\u0002\u000b", "\f\u000f\u000f\"\"\t\u0002\'\',.11>@BB^^\u0080\u0080\u0005\u0002((/", "/AA\u0004\u0002C\\c|\u0006\u00022;C\\aac|\u0003\u00022;\u0005\u0002", "2;CHch\u0002\u00c6\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\u00021\u0003\u0002\u0002\u0002\u0002", "3\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\u0003C\u0003\u0002\u0002\u0002", "\u0005E\u0003\u0002\u0002\u0002\u0007N\u0003\u0002\u0002\u0002\tW\u0003", "\u0002\u0002\u0002\u000bY\u0003\u0002\u0002\u0002\r[\u0003\u0002\u0002", "\u0002\u000f]\u0003\u0002\u0002\u0002\u0011_\u0003\u0002\u0002\u0002", "\u0013a\u0003\u0002\u0002\u0002\u0015c\u0003\u0002\u0002\u0002\u0017", "h\u0003\u0002\u0002\u0002\u0019l\u0003\u0002\u0002\u0002\u001bn\u0003", "\u0002\u0002\u0002\u001dp\u0003\u0002\u0002\u0002\u001f\u0087\u0003", "\u0002\u0002\u0002!\u008a\u0003\u0002\u0002\u0002#\u0094\u0003\u0002", "\u0002\u0002%\u0096\u0003\u0002\u0002\u0002\'\u0098\u0003\u0002\u0002", "\u0002)\u009b\u0003\u0002\u0002\u0002+\u009d\u0003\u0002\u0002\u0002", "-\u009f\u0003\u0002\u0002\u0002/\u00a1\u0003\u0002\u0002\u00021\u00a5", "\u0003\u0002\u0002\u00023\u00a8\u0003\u0002\u0002\u00025\u00ab\u0003", "\u0002\u0002\u00027\u00ad\u0003\u0002\u0002\u00029\u00af\u0003\u0002", "\u0002\u0002;\u00b1\u0003\u0002\u0002\u0002=\u00b3\u0003\u0002\u0002", "\u0002?\u00b6\u0003\u0002\u0002\u0002A\u00b9\u0003\u0002\u0002\u0002", "CD\t\u0002\u0002\u0002D\u0004\u0003\u0002\u0002\u0002EI\u0007)\u0002", "\u0002FH\u000b\u0002\u0002\u0002GF\u0003\u0002\u0002\u0002HK\u0003\u0002", "\u0002\u0002IJ\u0003\u0002\u0002\u0002IG\u0003\u0002\u0002\u0002JL\u0003", "\u0002\u0002\u0002KI\u0003\u0002\u0002\u0002LM\u0007)\u0002\u0002M\u0006", "\u0003\u0002\u0002\u0002NR\u0007$\u0002\u0002OQ\u000b\u0002\u0002\u0002", "PO\u0003\u0002\u0002\u0002QT\u0003\u0002\u0002\u0002RS\u0003\u0002\u0002", "\u0002RP\u0003\u0002\u0002\u0002SU\u0003\u0002\u0002\u0002TR\u0003\u0002", "\u0002\u0002UV\u0007$\u0002\u0002V\b\u0003\u0002\u0002\u0002WX\u0007", "]\u0002\u0002X\n\u0003\u0002\u0002\u0002YZ\u0007_\u0002\u0002Z\f\u0003", "\u0002\u0002\u0002[\\\u0007+\u0002\u0002\\\u000e\u0003\u0002\u0002\u0002", "]^\u0007*\u0002\u0002^\u0010\u0003\u0002\u0002\u0002_`\u0007~\u0002", "\u0002`\u0012\u0003\u0002\u0002\u0002ab\u00070\u0002\u0002b\u0014\u0003", "\u0002\u0002\u0002cd\u0007=\u0002\u0002d\u0016\u0003\u0002\u0002\u0002", "ei\t\u0003\u0002\u0002fi\u0005\u0011\t\u0002gi\t\u0004\u0002\u0002h", "e\u0003\u0002\u0002\u0002hf\u0003\u0002\u0002\u0002hg\u0003\u0002\u0002", "\u0002ij\u0003\u0002\u0002\u0002jh\u0003\u0002\u0002\u0002jk\u0003\u0002", "\u0002\u0002k\u0018\u0003\u0002\u0002\u0002lm\u0007>\u0002\u0002m\u001a", "\u0003\u0002\u0002\u0002no\u0007@\u0002\u0002o\u001c\u0003\u0002\u0002", "\u0002pq\u0007/\u0002\u0002q\u001e\u0003\u0002\u0002\u0002rs\u0007p", "\u0002\u0002st\u0007k\u0002\u0002t\u0088\u0007n\u0002\u0002uv\u0007", "v\u0002\u0002vw\u0007t\u0002\u0002wx\u0007w\u0002\u0002x\u0088\u0007", "g\u0002\u0002yz\u0007h\u0002\u0002z{\u0007c\u0002\u0002{|\u0007n\u0002", "\u0002|}\u0007u\u0002\u0002}\u0088\u0007g\u0002\u0002~\u007f\u0007u", "\u0002\u0002\u007f\u0080\u0007g\u0002\u0002\u0080\u0081\u0007n\u0002", "\u0002\u0081\u0088\u0007h\u0002\u0002\u0082\u0083\u0007u\u0002\u0002", "\u0083\u0084\u0007w\u0002\u0002\u0084\u0085\u0007r\u0002\u0002\u0085", "\u0086\u0007g\u0002\u0002\u0086\u0088\u0007t\u0002\u0002\u0087r\u0003", "\u0002\u0002\u0002\u0087u\u0003\u0002\u0002\u0002\u0087y\u0003\u0002", "\u0002\u0002\u0087~\u0003\u0002\u0002\u0002\u0087\u0082\u0003\u0002", "\u0002\u0002\u0088 \u0003\u0002\u0002\u0002\u0089\u008b\t\u0005\u0002", "\u0002\u008a\u0089\u0003\u0002\u0002\u0002\u008b\u008c\u0003\u0002\u0002", "\u0002\u008c\u008a\u0003\u0002\u0002\u0002\u008c\u008d\u0003\u0002\u0002", "\u0002\u008d\u0091\u0003\u0002\u0002\u0002\u008e\u0090\t\u0006\u0002", "\u0002\u008f\u008e\u0003\u0002\u0002\u0002\u0090\u0093\u0003\u0002\u0002", "\u0002\u0091\u008f\u0003\u0002\u0002\u0002\u0091\u0092\u0003\u0002\u0002", "\u0002\u0092\"\u0003\u0002\u0002\u0002\u0093\u0091\u0003\u0002\u0002", "\u0002\u0094\u0095\u0007`\u0002\u0002\u0095$\u0003\u0002\u0002\u0002", "\u0096\u0097\u0007<\u0002\u0002\u0097&\u0003\u0002\u0002\u0002\u0098", "\u0099\u0007<\u0002\u0002\u0099\u009a\u0007?\u0002\u0002\u009a(\u0003", "\u0002\u0002\u0002\u009b\u009c\u0007%\u0002\u0002\u009c*\u0003\u0002", "\u0002\u0002\u009d\u009e\u0007&\u0002\u0002\u009e,\u0003\u0002\u0002", "\u0002\u009f\u00a0\u0007g\u0002\u0002\u00a0.\u0003\u0002\u0002\u0002", "\u00a1\u00a2\u00073\u0002\u0002\u00a2\u00a3\u00078\u0002\u0002\u00a3", "\u00a4\u0007t\u0002\u0002\u00a40\u0003\u0002\u0002\u0002\u00a5\u00a6", "\u0007%\u0002\u0002\u00a6\u00a7\u0007*\u0002\u0002\u00a72\u0003\u0002", "\u0002\u0002\u00a8\u00a9\u0007%\u0002\u0002\u00a9\u00aa\u0007}\u0002", "\u0002\u00aa4\u0003\u0002\u0002\u0002\u00ab\u00ac\u0007\u007f\u0002", "\u0002\u00ac6\u0003\u0002\u0002\u0002\u00ad\u00ae\u0007}\u0002\u0002", "\u00ae8\u0003\u0002\u0002\u0002\u00af\u00b0\t\u0007\u0002\u0002\u00b0", ":\u0003\u0002\u0002\u0002\u00b1\u00b2\t\b\u0002\u0002\u00b2<\u0003\u0002", "\u0002\u0002\u00b3\u00b4\u0005!\u0011\u0002\u00b4\u00b5\u0005%\u0013", "\u0002\u00b5>\u0003\u0002\u0002\u0002\u00b6\u00b7\u0005%\u0013\u0002", "\u00b7\u00b8\u0005!\u0011\u0002\u00b8@\u0003\u0002\u0002\u0002\u00b9", "\u00ba\u0005+\u0016\u0002\u00ba\u00bb\u000b\u0002\u0002\u0002\u00bb", "B\u0003\u0002\u0002\u0002\n\u0002IRhj\u0087\u008c\u0091\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 SmalltalkLexer(input) { antlr4.Lexer.call(this, input); this._interp = new antlr4.atn.LexerATNSimulator(this, atn, decisionsToDFA, new antlr4.PredictionContextCache()); return this; } SmalltalkLexer.prototype = Object.create(antlr4.Lexer.prototype); SmalltalkLexer.prototype.constructor = SmalltalkLexer; Object.defineProperty(SmalltalkLexer.prototype, "atn", { get : function() { return atn; } }); SmalltalkLexer.EOF = antlr4.Token.EOF; SmalltalkLexer.SEPARATOR = 1; SmalltalkLexer.STRING = 2; SmalltalkLexer.COMMENT = 3; SmalltalkLexer.BLOCK_START = 4; SmalltalkLexer.BLOCK_END = 5; SmalltalkLexer.CLOSE_PAREN = 6; SmalltalkLexer.OPEN_PAREN = 7; SmalltalkLexer.PIPE = 8; SmalltalkLexer.PERIOD = 9; SmalltalkLexer.SEMI_COLON = 10; SmalltalkLexer.BINARY_SELECTOR = 11; SmalltalkLexer.LT = 12; SmalltalkLexer.GT = 13; SmalltalkLexer.MINUS = 14; SmalltalkLexer.RESERVED_WORD = 15; SmalltalkLexer.IDENTIFIER = 16; SmalltalkLexer.CARROT = 17; SmalltalkLexer.COLON = 18; SmalltalkLexer.ASSIGNMENT = 19; SmalltalkLexer.HASH = 20; SmalltalkLexer.DOLLAR = 21; SmalltalkLexer.EXP = 22; SmalltalkLexer.HEX = 23; SmalltalkLexer.LITARR_START = 24; SmalltalkLexer.DYNDICT_START = 25; SmalltalkLexer.DYNARR_END = 26; SmalltalkLexer.DYNARR_START = 27; SmalltalkLexer.DIGIT = 28; SmalltalkLexer.HEXDIGIT = 29; SmalltalkLexer.KEYWORD = 30; SmalltalkLexer.BLOCK_PARAM = 31; SmalltalkLexer.CHARACTER_CONSTANT = 32; SmalltalkLexer.prototype.channelNames = [ "DEFAULT_TOKEN_CHANNEL", "HIDDEN" ]; SmalltalkLexer.prototype.modeNames = [ "DEFAULT_MODE" ]; SmalltalkLexer.prototype.literalNames = [ null, null, null, null, "'['", "']'", "')'", "'('", "'|'", "'.'", "';'", null, "'<'", "'>'", "'-'", null, null, "'^'", "':'", "':='", "'#'", "'$'", "'e'", "'16r'", "'#('", "'#{'", "'}'", "'{'" ]; SmalltalkLexer.prototype.symbolicNames = [ null, "SEPARATOR", "STRING", "COMMENT", "BLOCK_START", "BLOCK_END", "CLOSE_PAREN", "OPEN_PAREN", "PIPE", "PERIOD", "SEMI_COLON", "BINARY_SELECTOR", "LT", "GT", "MINUS", "RESERVED_WORD", "IDENTIFIER", "CARROT", "COLON", "ASSIGNMENT", "HASH", "DOLLAR", "EXP", "HEX", "LITARR_START", "DYNDICT_START", "DYNARR_END", "DYNARR_START", "DIGIT", "HEXDIGIT", "KEYWORD", "BLOCK_PARAM", "CHARACTER_CONSTANT" ]; SmalltalkLexer.prototype.ruleNames = [ "SEPARATOR", "STRING", "COMMENT", "BLOCK_START", "BLOCK_END", "CLOSE_PAREN", "OPEN_PAREN", "PIPE", "PERIOD", "SEMI_COLON", "BINARY_SELECTOR", "LT", "GT", "MINUS", "RESERVED_WORD", "IDENTIFIER", "CARROT", "COLON", "ASSIGNMENT", "HASH", "DOLLAR", "EXP", "HEX", "LITARR_START", "DYNDICT_START", "DYNARR_END", "DYNARR_START", "DIGIT", "HEXDIGIT", "KEYWORD", "BLOCK_PARAM", "CHARACTER_CONSTANT" ]; SmalltalkLexer.prototype.grammarFileName = "Smalltalk.g4"; exports.SmalltalkLexer = SmalltalkLexer;