toylang
Version:
A toy programming language built with TypeScript for learning purposes
40 lines (39 loc) • 1.89 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.tl = void 0;
var tl;
(function (tl) {
//
// Basic
//
var SyntaxKind;
(function (SyntaxKind) {
SyntaxKind["Program"] = "Program";
SyntaxKind["Identifier"] = "Identifier";
SyntaxKind["StringLiteral"] = "StringLiteral";
SyntaxKind["NumericLiteral"] = "NumericLiteral";
SyntaxKind["NullLiteral"] = "NullLiteral";
SyntaxKind["BooleanLiteral"] = "BooleanLiteral";
SyntaxKind["ClassDeclaration"] = "ClassDeclaration";
SyntaxKind["FunctionDeclaration"] = "FunctionDeclaration";
SyntaxKind["VariableDeclaration"] = "VariableDeclaration";
SyntaxKind["VariableStatement"] = "VariableStatement";
SyntaxKind["Super"] = "Super";
SyntaxKind["NewExpression"] = "NewExpression";
SyntaxKind["ThisExpression"] = "ThisExpression";
SyntaxKind["UnaryExpression"] = "UnaryExpression";
SyntaxKind["MemberExpression"] = "MemberExpression";
SyntaxKind["CallExpression"] = "CallExpression";
SyntaxKind["AssignmentExpression"] = "AssignmentExpression";
SyntaxKind["BinaryExpression"] = "BinaryExpression";
SyntaxKind["LogicalExpression"] = "LogicalExpression";
SyntaxKind["ExpressionStatement"] = "ExpressionStatement";
SyntaxKind["ReturnStatement"] = "ReturnStatement";
SyntaxKind["EmptyStatement"] = "EmptyStatement";
SyntaxKind["BlockStatement"] = "BlockStatement";
SyntaxKind["IfStatement"] = "IfStatement";
SyntaxKind["ForStatement"] = "ForStatement";
SyntaxKind["WhileStatement"] = "WhileStatement";
SyntaxKind["DoWhileStatement"] = "DoWhileStatement";
})(SyntaxKind = tl.SyntaxKind || (tl.SyntaxKind = {}));
})(tl = exports.tl || (exports.tl = {}));