ts-fusion-parser
Version:
Parser for Neos Fusion Files
285 lines (284 loc) • 8.43 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.FloatToken = exports.IntegerToken = exports.NullValueToken = exports.FalseValueToken = exports.TrueValueToken = exports.StringSingleQuotedToken = exports.StringDoubleQuotedToken = exports.StringDoubleQuotedStartToken = exports.StringSingleQuotedStartToken = exports.LogicalOrToken = exports.LogicalAndToken = exports.MinusToken = exports.PlusToken = exports.MoreThanToken = exports.LessThanToken = exports.MoreThanOrEqualToken = exports.LessThanOrEqualToken = exports.IsNotEqualToken = exports.IsEqualToken = exports.SpreadToken = exports.ModuloToken = exports.MultiplicationToken = exports.DivisionToken = exports.ExclamationMarkToken = exports.QuestionMarkToken = exports.CommaToken = exports.AssignmentToken = exports.ObjectFunctionPathPartToken = exports.ObjectPathPartToken = exports.ColonToken = exports.DotToken = exports.RBracketToken = exports.LBracketToken = exports.RBraceToken = exports.LBraceToken = exports.RParenToken = exports.LParenToken = exports.CallbackSignatureToken = exports.AnyCharacterToken = exports.WhitespaceToken = void 0;
const Token_1 = require("../Token");
class WhitespaceToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^(\s+)/;
}
}
exports.WhitespaceToken = WhitespaceToken;
class AnyCharacterToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^([\s\S])/;
}
}
exports.AnyCharacterToken = AnyCharacterToken;
class CallbackSignatureToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^((?:\(\s*[a-zA-Z0-9_-]*(?:\s*,\s*[a-zA-Z0-9_-]+)*\s*\)|[a-zA-Z0-9_-]+)\s*=>)/;
}
}
exports.CallbackSignatureToken = CallbackSignatureToken;
class LParenToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^(\()/;
}
}
exports.LParenToken = LParenToken;
class RParenToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^(\))/;
}
}
exports.RParenToken = RParenToken;
class LBraceToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^({)/;
}
}
exports.LBraceToken = LBraceToken;
class RBraceToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^(})/;
}
}
exports.RBraceToken = RBraceToken;
class LBracketToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^(\[)/;
}
}
exports.LBracketToken = LBracketToken;
class RBracketToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^(\])/;
}
}
exports.RBracketToken = RBracketToken;
class DotToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^(\.)/;
}
}
exports.DotToken = DotToken;
class ColonToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^(:)/;
}
}
exports.ColonToken = ColonToken;
class ObjectPathPartToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^([a-zA-Z0-9_-]+)/;
}
}
exports.ObjectPathPartToken = ObjectPathPartToken;
class ObjectFunctionPathPartToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^([a-zA-Z0-9_-]+\()/;
}
}
exports.ObjectFunctionPathPartToken = ObjectFunctionPathPartToken;
class AssignmentToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^(=)/;
}
}
exports.AssignmentToken = AssignmentToken;
class CommaToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^(,)/;
}
}
exports.CommaToken = CommaToken;
class QuestionMarkToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^(\?)/;
}
}
exports.QuestionMarkToken = QuestionMarkToken;
class ExclamationMarkToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^(!)/;
}
}
exports.ExclamationMarkToken = ExclamationMarkToken;
class DivisionToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^(\/)/;
}
}
exports.DivisionToken = DivisionToken;
class MultiplicationToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^(\*)/;
}
}
exports.MultiplicationToken = MultiplicationToken;
class ModuloToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^(%)/;
}
}
exports.ModuloToken = ModuloToken;
class SpreadToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^(\.\.\.)/;
}
}
exports.SpreadToken = SpreadToken;
class IsEqualToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^(==)/;
}
}
exports.IsEqualToken = IsEqualToken;
class IsNotEqualToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^(!=)/;
}
}
exports.IsNotEqualToken = IsNotEqualToken;
class LessThanOrEqualToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^(<=)/;
}
}
exports.LessThanOrEqualToken = LessThanOrEqualToken;
class MoreThanOrEqualToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^(>=)/;
}
}
exports.MoreThanOrEqualToken = MoreThanOrEqualToken;
class LessThanToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^(<)/;
}
}
exports.LessThanToken = LessThanToken;
class MoreThanToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^(>)/;
}
}
exports.MoreThanToken = MoreThanToken;
class PlusToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^(\+)/;
}
}
exports.PlusToken = PlusToken;
class MinusToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^(-)/;
}
}
exports.MinusToken = MinusToken;
class LogicalAndToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^(&&|and)/;
}
}
exports.LogicalAndToken = LogicalAndToken;
class LogicalOrToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^(\|\||or)/;
}
}
exports.LogicalOrToken = LogicalOrToken;
class StringSingleQuotedStartToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^(')/;
}
}
exports.StringSingleQuotedStartToken = StringSingleQuotedStartToken;
class StringDoubleQuotedStartToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^(")/;
}
}
exports.StringDoubleQuotedStartToken = StringDoubleQuotedStartToken;
class StringDoubleQuotedToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^("[^"\\]*(?:\\.[^"\\]*)*")/;
}
}
exports.StringDoubleQuotedToken = StringDoubleQuotedToken;
class StringSingleQuotedToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^('[^'\\]*(?:\\.[^'\\]*)*')/;
}
}
exports.StringSingleQuotedToken = StringSingleQuotedToken;
class TrueValueToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^(true|TRUE)/;
}
}
exports.TrueValueToken = TrueValueToken;
class FalseValueToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^(false|FALSE)/;
}
}
exports.FalseValueToken = FalseValueToken;
class NullValueToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^(null|NULL)/;
}
}
exports.NullValueToken = NullValueToken;
class IntegerToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^(-?\d+)/;
}
}
exports.IntegerToken = IntegerToken;
class FloatToken extends Token_1.Token {
constructor() {
super(...arguments);
this.regex = /^(-?\d+\.\d+)/;
}
}
exports.FloatToken = FloatToken;