livescript top-level property

Mode livescript
final

Implementation

final livescript = Mode(
    refs: {
      '~contains~2~variants~2~contains~2': Mode(
          className: "subst",
          begin: "#[A-Za-z\$_]",
          end: "(?:-[0-9A-Za-z\$_]|[0-9A-Za-z\$_])*",
          keywords: {
            "keyword": [
              "as",
              "in",
              "of",
              "if",
              "for",
              "while",
              "finally",
              "var",
              "new",
              "function",
              "do",
              "return",
              "void",
              "else",
              "break",
              "catch",
              "instanceof",
              "with",
              "throw",
              "case",
              "default",
              "try",
              "switch",
              "continue",
              "typeof",
              "delete",
              "let",
              "yield",
              "const",
              "class",
              "debugger",
              "async",
              "await",
              "static",
              "import",
              "from",
              "export",
              "extends",
              "then",
              "unless",
              "until",
              "loop",
              "of",
              "by",
              "when",
              "and",
              "or",
              "is",
              "isnt",
              "not",
              "it",
              "that",
              "otherwise",
              "from",
              "to",
              "til",
              "fallthrough",
              "case",
              "enum",
              "native",
              "list",
              "map",
              "__hasProp",
              "__extends",
              "__slice",
              "__bind",
              "__indexOf"
            ],
            "literal": [
              "true",
              "false",
              "null",
              "undefined",
              "NaN",
              "Infinity",
              "yes",
              "no",
              "on",
              "off",
              "it",
              "that",
              "void"
            ],
            "built_in": [
              "setInterval",
              "setTimeout",
              "clearInterval",
              "clearTimeout",
              "require",
              "exports",
              "eval",
              "isFinite",
              "isNaN",
              "parseFloat",
              "parseInt",
              "decodeURI",
              "decodeURIComponent",
              "encodeURI",
              "encodeURIComponent",
              "escape",
              "unescape",
              "Object",
              "Function",
              "Boolean",
              "Symbol",
              "Math",
              "Date",
              "Number",
              "BigInt",
              "String",
              "RegExp",
              "Array",
              "Float32Array",
              "Float64Array",
              "Int8Array",
              "Uint8Array",
              "Uint8ClampedArray",
              "Int16Array",
              "Int32Array",
              "Uint16Array",
              "Uint32Array",
              "BigInt64Array",
              "BigUint64Array",
              "Set",
              "Map",
              "WeakSet",
              "WeakMap",
              "ArrayBuffer",
              "SharedArrayBuffer",
              "Atomics",
              "DataView",
              "JSON",
              "Promise",
              "Generator",
              "GeneratorFunction",
              "AsyncFunction",
              "Reflect",
              "Proxy",
              "Intl",
              "WebAssembly",
              "Error",
              "EvalError",
              "InternalError",
              "RangeError",
              "ReferenceError",
              "SyntaxError",
              "TypeError",
              "URIError",
              "npm",
              "print"
            ]
          }),
      '~contains~2~variants~2~contains~1~contains~5': Mode(
          begin: "``",
          end: "``",
          excludeBegin: true,
          excludeEnd: true,
          subLanguage: ["javascript"]),
      '~contains~2~variants~2~contains~1~contains~4':
          Mode(begin: "@[A-Za-z\$_](?:-[0-9A-Za-z\$_]|[0-9A-Za-z\$_])*"),
      '~contains~2~variants~2~contains~1~contains~3':
          Mode(className: "regexp", variants: [
        Mode(begin: "//", end: "//[gim]*", contains: [
          Mode(ref: '~contains~2~variants~2~contains~1'),
          HASH_COMMENT_MODE
        ]),
        Mode(begin: "\\/(?![ *])(\\\\.|[^\\\\\\n])*?\\/[gim]*(?=\\W)")
      ]),
      '~contains~2~variants~2~contains~1':
          Mode(className: "subst", begin: "#\\{", end: "\\}", keywords: {
        "keyword": [
          "as",
          "in",
          "of",
          "if",
          "for",
          "while",
          "finally",
          "var",
          "new",
          "function",
          "do",
          "return",
          "void",
          "else",
          "break",
          "catch",
          "instanceof",
          "with",
          "throw",
          "case",
          "default",
          "try",
          "switch",
          "continue",
          "typeof",
          "delete",
          "let",
          "yield",
          "const",
          "class",
          "debugger",
          "async",
          "await",
          "static",
          "import",
          "from",
          "export",
          "extends",
          "then",
          "unless",
          "until",
          "loop",
          "of",
          "by",
          "when",
          "and",
          "or",
          "is",
          "isnt",
          "not",
          "it",
          "that",
          "otherwise",
          "from",
          "to",
          "til",
          "fallthrough",
          "case",
          "enum",
          "native",
          "list",
          "map",
          "__hasProp",
          "__extends",
          "__slice",
          "__bind",
          "__indexOf"
        ],
        "literal": [
          "true",
          "false",
          "null",
          "undefined",
          "NaN",
          "Infinity",
          "yes",
          "no",
          "on",
          "off",
          "it",
          "that",
          "void"
        ],
        "built_in": [
          "setInterval",
          "setTimeout",
          "clearInterval",
          "clearTimeout",
          "require",
          "exports",
          "eval",
          "isFinite",
          "isNaN",
          "parseFloat",
          "parseInt",
          "decodeURI",
          "decodeURIComponent",
          "encodeURI",
          "encodeURIComponent",
          "escape",
          "unescape",
          "Object",
          "Function",
          "Boolean",
          "Symbol",
          "Math",
          "Date",
          "Number",
          "BigInt",
          "String",
          "RegExp",
          "Array",
          "Float32Array",
          "Float64Array",
          "Int8Array",
          "Uint8Array",
          "Uint8ClampedArray",
          "Int16Array",
          "Int32Array",
          "Uint16Array",
          "Uint32Array",
          "BigInt64Array",
          "BigUint64Array",
          "Set",
          "Map",
          "WeakSet",
          "WeakMap",
          "ArrayBuffer",
          "SharedArrayBuffer",
          "Atomics",
          "DataView",
          "JSON",
          "Promise",
          "Generator",
          "GeneratorFunction",
          "AsyncFunction",
          "Reflect",
          "Proxy",
          "Intl",
          "WebAssembly",
          "Error",
          "EvalError",
          "InternalError",
          "RangeError",
          "ReferenceError",
          "SyntaxError",
          "TypeError",
          "URIError",
          "npm",
          "print"
        ]
      }, contains: [
        BINARY_NUMBER_MODE,
        Mode(ref: '~contains~1'),
        Mode(ref: '~contains~2'),
        Mode(ref: '~contains~2~variants~2~contains~1~contains~3'),
        Mode(ref: '~contains~2~variants~2~contains~1~contains~4'),
        Mode(ref: '~contains~2~variants~2~contains~1~contains~5')
      ]),
      '~contains~2': Mode(className: "string", variants: [
        Mode(begin: "'''", end: "'''", contains: [BACKSLASH_ESCAPE]),
        Mode(begin: "'", end: "'", contains: [BACKSLASH_ESCAPE]),
        Mode(begin: "\"\"\"", end: "\"\"\"", contains: [
          BACKSLASH_ESCAPE,
          Mode(ref: '~contains~2~variants~2~contains~1'),
          Mode(ref: '~contains~2~variants~2~contains~2')
        ]),
        Mode(begin: "\"", end: "\"", contains: [
          BACKSLASH_ESCAPE,
          Mode(ref: '~contains~2~variants~2~contains~1'),
          Mode(ref: '~contains~2~variants~2~contains~2')
        ]),
        Mode(begin: "\\\\", end: "(\\s|\$)", excludeEnd: true)
      ]),
      '~contains~1': Mode(
          className: "number",
          begin:
              "(\\b0[xX][a-fA-F0-9_]+)|(\\b\\d(\\d|_\\d)*(\\.(\\d(\\d|_\\d)*)?)?(_*[eE]([-+]\\d(_\\d|\\d)*)?)?[_a-z]*)",
          relevance: 0,
          starts: Mode(end: "(\\s*/)?", relevance: 0)),
    },
    name: "LiveScript",
    aliases: ["ls"],
    keywords: {
      "keyword": [
        "as",
        "in",
        "of",
        "if",
        "for",
        "while",
        "finally",
        "var",
        "new",
        "function",
        "do",
        "return",
        "void",
        "else",
        "break",
        "catch",
        "instanceof",
        "with",
        "throw",
        "case",
        "default",
        "try",
        "switch",
        "continue",
        "typeof",
        "delete",
        "let",
        "yield",
        "const",
        "class",
        "debugger",
        "async",
        "await",
        "static",
        "import",
        "from",
        "export",
        "extends",
        "then",
        "unless",
        "until",
        "loop",
        "of",
        "by",
        "when",
        "and",
        "or",
        "is",
        "isnt",
        "not",
        "it",
        "that",
        "otherwise",
        "from",
        "to",
        "til",
        "fallthrough",
        "case",
        "enum",
        "native",
        "list",
        "map",
        "__hasProp",
        "__extends",
        "__slice",
        "__bind",
        "__indexOf"
      ],
      "literal": [
        "true",
        "false",
        "null",
        "undefined",
        "NaN",
        "Infinity",
        "yes",
        "no",
        "on",
        "off",
        "it",
        "that",
        "void"
      ],
      "built_in": [
        "setInterval",
        "setTimeout",
        "clearInterval",
        "clearTimeout",
        "require",
        "exports",
        "eval",
        "isFinite",
        "isNaN",
        "parseFloat",
        "parseInt",
        "decodeURI",
        "decodeURIComponent",
        "encodeURI",
        "encodeURIComponent",
        "escape",
        "unescape",
        "Object",
        "Function",
        "Boolean",
        "Symbol",
        "Math",
        "Date",
        "Number",
        "BigInt",
        "String",
        "RegExp",
        "Array",
        "Float32Array",
        "Float64Array",
        "Int8Array",
        "Uint8Array",
        "Uint8ClampedArray",
        "Int16Array",
        "Int32Array",
        "Uint16Array",
        "Uint32Array",
        "BigInt64Array",
        "BigUint64Array",
        "Set",
        "Map",
        "WeakSet",
        "WeakMap",
        "ArrayBuffer",
        "SharedArrayBuffer",
        "Atomics",
        "DataView",
        "JSON",
        "Promise",
        "Generator",
        "GeneratorFunction",
        "AsyncFunction",
        "Reflect",
        "Proxy",
        "Intl",
        "WebAssembly",
        "Error",
        "EvalError",
        "InternalError",
        "RangeError",
        "ReferenceError",
        "SyntaxError",
        "TypeError",
        "URIError",
        "npm",
        "print"
      ]
    },
    illegal: "\\/\\*",
    contains: [
      BINARY_NUMBER_MODE,
      Mode(ref: '~contains~1'),
      Mode(ref: '~contains~2'),
      Mode(ref: '~contains~2~variants~2~contains~1~contains~3'),
      Mode(ref: '~contains~2~variants~2~contains~1~contains~4'),
      Mode(ref: '~contains~2~variants~2~contains~1~contains~5'),
      Mode(scope: "comment", begin: "\\/\\*", end: "\\*\\/", contains: [
        Mode(
            scope: "doctag",
            begin: "[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",
            end: "(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):",
            excludeBegin: true,
            relevance: 0),
        Mode(
            begin:
                "[ ]+((?:I|a|is|so|us|to|at|if|in|it|on|[A-Za-z]+['](d|ve|re|ll|t|s|n)|[A-Za-z]+[-][a-z]+|[A-Za-z][a-z]{2,})[.]?[:]?([.][ ]|[ ])){3}")
      ]),
      HASH_COMMENT_MODE,
      Mode(begin: "(#=>|=>|\\|>>|-?->|!->)"),
      Mode(
          className: "function",
          contains: [
            Mode(
                scope: "title",
                begin: "[A-Za-z\$_](?:-[0-9A-Za-z\$_]|[0-9A-Za-z\$_])*",
                relevance: 0),
            Mode(
                className: "params",
                begin: "\\(",
                returnBegin: true,
                contains: [
                  Mode(begin: "\\(", end: "\\)", keywords: {
                    "keyword": [
                      "as",
                      "in",
                      "of",
                      "if",
                      "for",
                      "while",
                      "finally",
                      "var",
                      "new",
                      "function",
                      "do",
                      "return",
                      "void",
                      "else",
                      "break",
                      "catch",
                      "instanceof",
                      "with",
                      "throw",
                      "case",
                      "default",
                      "try",
                      "switch",
                      "continue",
                      "typeof",
                      "delete",
                      "let",
                      "yield",
                      "const",
                      "class",
                      "debugger",
                      "async",
                      "await",
                      "static",
                      "import",
                      "from",
                      "export",
                      "extends",
                      "then",
                      "unless",
                      "until",
                      "loop",
                      "of",
                      "by",
                      "when",
                      "and",
                      "or",
                      "is",
                      "isnt",
                      "not",
                      "it",
                      "that",
                      "otherwise",
                      "from",
                      "to",
                      "til",
                      "fallthrough",
                      "case",
                      "enum",
                      "native",
                      "list",
                      "map",
                      "__hasProp",
                      "__extends",
                      "__slice",
                      "__bind",
                      "__indexOf"
                    ],
                    "literal": [
                      "true",
                      "false",
                      "null",
                      "undefined",
                      "NaN",
                      "Infinity",
                      "yes",
                      "no",
                      "on",
                      "off",
                      "it",
                      "that",
                      "void"
                    ],
                    "built_in": [
                      "setInterval",
                      "setTimeout",
                      "clearInterval",
                      "clearTimeout",
                      "require",
                      "exports",
                      "eval",
                      "isFinite",
                      "isNaN",
                      "parseFloat",
                      "parseInt",
                      "decodeURI",
                      "decodeURIComponent",
                      "encodeURI",
                      "encodeURIComponent",
                      "escape",
                      "unescape",
                      "Object",
                      "Function",
                      "Boolean",
                      "Symbol",
                      "Math",
                      "Date",
                      "Number",
                      "BigInt",
                      "String",
                      "RegExp",
                      "Array",
                      "Float32Array",
                      "Float64Array",
                      "Int8Array",
                      "Uint8Array",
                      "Uint8ClampedArray",
                      "Int16Array",
                      "Int32Array",
                      "Uint16Array",
                      "Uint32Array",
                      "BigInt64Array",
                      "BigUint64Array",
                      "Set",
                      "Map",
                      "WeakSet",
                      "WeakMap",
                      "ArrayBuffer",
                      "SharedArrayBuffer",
                      "Atomics",
                      "DataView",
                      "JSON",
                      "Promise",
                      "Generator",
                      "GeneratorFunction",
                      "AsyncFunction",
                      "Reflect",
                      "Proxy",
                      "Intl",
                      "WebAssembly",
                      "Error",
                      "EvalError",
                      "InternalError",
                      "RangeError",
                      "ReferenceError",
                      "SyntaxError",
                      "TypeError",
                      "URIError",
                      "npm",
                      "print"
                    ]
                  }, contains: [
                    Mode(self: true),
                    BINARY_NUMBER_MODE,
                    Mode(ref: '~contains~1'),
                    Mode(ref: '~contains~2'),
                    Mode(ref: '~contains~2~variants~2~contains~1~contains~3'),
                    Mode(ref: '~contains~2~variants~2~contains~1~contains~4'),
                    Mode(ref: '~contains~2~variants~2~contains~1~contains~5')
                  ])
                ])
          ],
          returnBegin: true,
          variants: [
            Mode(
                begin:
                    "([A-Za-z\$_](?:-[0-9A-Za-z\$_]|[0-9A-Za-z\$_])*\\s*(?:=|:=)\\s*)?(\\(.*\\)\\s*)?\\B->\\*?",
                end: "->\\*?"),
            Mode(
                begin:
                    "([A-Za-z\$_](?:-[0-9A-Za-z\$_]|[0-9A-Za-z\$_])*\\s*(?:=|:=)\\s*)?!?(\\(.*\\)\\s*)?\\B[-\\x7e]{1,2}>\\*?",
                end: "[-\\x7e]{1,2}>\\*?"),
            Mode(
                begin:
                    "([A-Za-z\$_](?:-[0-9A-Za-z\$_]|[0-9A-Za-z\$_])*\\s*(?:=|:=)\\s*)?(\\(.*\\)\\s*)?\\B!?[-\\x7e]{1,2}>\\*?",
                end: "!?[-\\x7e]{1,2}>\\*?")
          ]),
      Mode(variants: [
        Mode(match: [
          "class\\s+",
          "[A-Za-z\$_](?:-[0-9A-Za-z\$_]|[0-9A-Za-z\$_])*",
          "\\s+extends\\s+",
          "[A-Za-z\$_](?:-[0-9A-Za-z\$_]|[0-9A-Za-z\$_])*"
        ]),
        Mode(match: [
          "class\\s+",
          "[A-Za-z\$_](?:-[0-9A-Za-z\$_]|[0-9A-Za-z\$_])*"
        ])
      ], scope: {
        "2": "title.class",
        "4": "title.class.inherited"
      }, keywords: {
        "keyword": [
          "as",
          "in",
          "of",
          "if",
          "for",
          "while",
          "finally",
          "var",
          "new",
          "function",
          "do",
          "return",
          "void",
          "else",
          "break",
          "catch",
          "instanceof",
          "with",
          "throw",
          "case",
          "default",
          "try",
          "switch",
          "continue",
          "typeof",
          "delete",
          "let",
          "yield",
          "const",
          "class",
          "debugger",
          "async",
          "await",
          "static",
          "import",
          "from",
          "export",
          "extends",
          "then",
          "unless",
          "until",
          "loop",
          "of",
          "by",
          "when",
          "and",
          "or",
          "is",
          "isnt",
          "not",
          "it",
          "that",
          "otherwise",
          "from",
          "to",
          "til",
          "fallthrough",
          "case",
          "enum",
          "native",
          "list",
          "map",
          "__hasProp",
          "__extends",
          "__slice",
          "__bind",
          "__indexOf"
        ],
        "literal": [
          "true",
          "false",
          "null",
          "undefined",
          "NaN",
          "Infinity",
          "yes",
          "no",
          "on",
          "off",
          "it",
          "that",
          "void"
        ],
        "built_in": [
          "setInterval",
          "setTimeout",
          "clearInterval",
          "clearTimeout",
          "require",
          "exports",
          "eval",
          "isFinite",
          "isNaN",
          "parseFloat",
          "parseInt",
          "decodeURI",
          "decodeURIComponent",
          "encodeURI",
          "encodeURIComponent",
          "escape",
          "unescape",
          "Object",
          "Function",
          "Boolean",
          "Symbol",
          "Math",
          "Date",
          "Number",
          "BigInt",
          "String",
          "RegExp",
          "Array",
          "Float32Array",
          "Float64Array",
          "Int8Array",
          "Uint8Array",
          "Uint8ClampedArray",
          "Int16Array",
          "Int32Array",
          "Uint16Array",
          "Uint32Array",
          "BigInt64Array",
          "BigUint64Array",
          "Set",
          "Map",
          "WeakSet",
          "WeakMap",
          "ArrayBuffer",
          "SharedArrayBuffer",
          "Atomics",
          "DataView",
          "JSON",
          "Promise",
          "Generator",
          "GeneratorFunction",
          "AsyncFunction",
          "Reflect",
          "Proxy",
          "Intl",
          "WebAssembly",
          "Error",
          "EvalError",
          "InternalError",
          "RangeError",
          "ReferenceError",
          "SyntaxError",
          "TypeError",
          "URIError",
          "npm",
          "print"
        ]
      }),
      Mode(
          begin: "[A-Za-z\$_](?:-[0-9A-Za-z\$_]|[0-9A-Za-z\$_])*:",
          end: ":",
          returnBegin: true,
          returnEnd: true,
          relevance: 0)
    ]);