@fluster.io/dev
Version:
8 lines (7 loc) • 35.4 kB
JavaScript
const e = Object.freeze(JSON.parse(`{"displayName":"Erlang","fileTypes":["erl","escript","hrl","xrl","yrl"],"name":"erlang","patterns":[{"include":"#module-directive"},{"include":"#import-export-directive"},{"include":"#behaviour-directive"},{"include":"#record-directive"},{"include":"#define-directive"},{"include":"#macro-directive"},{"include":"#directive"},{"include":"#function"},{"include":"#everything-else"}],"repository":{"atom":{"patterns":[{"begin":"(')","beginCaptures":{"1":{"name":"punctuation.definition.symbol.begin.erlang"}},"end":"(')","endCaptures":{"1":{"name":"punctuation.definition.symbol.end.erlang"}},"name":"constant.other.symbol.quoted.single.erlang","patterns":[{"captures":{"1":{"name":"punctuation.definition.escape.erlang"},"3":{"name":"punctuation.definition.escape.erlang"}},"match":"(\\\\\\\\)([\\"'\\\\\\\\bdefnrstv]|(\\\\^)[@-_a-z]|[0-7]{1,3}|x[A-Fa-f\\\\d]{2})","name":"constant.other.symbol.escape.erlang"},{"match":"\\\\\\\\\\\\^?.?","name":"invalid.illegal.atom.erlang"}]},{"match":"[a-z][@-Z_a-z\\\\d]*+","name":"constant.other.symbol.unquoted.erlang"}]},"behaviour-directive":{"captures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.behaviour.erlang"},"3":{"name":"punctuation.definition.parameters.begin.erlang"},"4":{"name":"entity.name.type.class.behaviour.definition.erlang"},"5":{"name":"punctuation.definition.parameters.end.erlang"},"6":{"name":"punctuation.section.directive.end.erlang"}},"match":"^\\\\s*+(-)\\\\s*+(behaviour)\\\\s*+(\\\\()\\\\s*+([a-z][@-Z_a-z\\\\d]*+)\\\\s*+(\\\\))\\\\s*+(\\\\.)","name":"meta.directive.behaviour.erlang"},"binary":{"begin":"(<<)","beginCaptures":{"1":{"name":"punctuation.definition.binary.begin.erlang"}},"end":"(>>)","endCaptures":{"1":{"name":"punctuation.definition.binary.end.erlang"}},"name":"meta.structure.binary.erlang","patterns":[{"captures":{"1":{"name":"punctuation.separator.binary.erlang"},"2":{"name":"punctuation.separator.value-size.erlang"}},"match":"(,)|(:)"},{"include":"#internal-type-specifiers"},{"include":"#everything-else"}]},"character":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.character.erlang"},"2":{"name":"constant.character.escape.erlang"},"3":{"name":"punctuation.definition.escape.erlang"},"5":{"name":"punctuation.definition.escape.erlang"}},"match":"(\\\\$)((\\\\\\\\)([\\"'\\\\\\\\bdefnrstv]|(\\\\^)[@-_a-z]|[0-7]{1,3}|x[A-Fa-f\\\\d]{2}))","name":"constant.character.erlang"},{"match":"\\\\$\\\\\\\\\\\\^?.?","name":"invalid.illegal.character.erlang"},{"captures":{"1":{"name":"punctuation.definition.character.erlang"}},"match":"(\\\\$)[ \\\\S]","name":"constant.character.erlang"},{"match":"\\\\$.?","name":"invalid.illegal.character.erlang"}]},"comment":{"begin":"(^[\\\\t ]+)?(?=%)","beginCaptures":{"1":{"name":"punctuation.whitespace.comment.leading.erlang"}},"end":"(?!\\\\G)","patterns":[{"begin":"%","beginCaptures":{"0":{"name":"punctuation.definition.comment.erlang"}},"end":"\\\\n","name":"comment.line.percentage.erlang"}]},"define-directive":{"patterns":[{"begin":"^\\\\s*+(-)\\\\s*+(define)\\\\s*+(\\\\()\\\\s*+([@-Z_a-z\\\\d]++)\\\\s*+","beginCaptures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.define.erlang"},"3":{"name":"punctuation.definition.parameters.begin.erlang"},"4":{"name":"entity.name.function.macro.definition.erlang"}},"end":"(\\\\))\\\\s*+(\\\\.)","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.erlang"},"2":{"name":"punctuation.section.directive.end.erlang"}},"name":"meta.directive.define.erlang","patterns":[{"include":"#everything-else"}]},{"begin":"(?=^\\\\s*+-\\\\s*+define\\\\s*+\\\\(\\\\s*+[@-Z_a-z\\\\d]++\\\\s*+\\\\()","end":"(\\\\))\\\\s*+(\\\\.)","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.erlang"},"2":{"name":"punctuation.section.directive.end.erlang"}},"name":"meta.directive.define.erlang","patterns":[{"begin":"^\\\\s*+(-)\\\\s*+(define)\\\\s*+(\\\\()\\\\s*+([@-Z_a-z\\\\d]++)\\\\s*+(\\\\()","beginCaptures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.define.erlang"},"3":{"name":"punctuation.definition.parameters.begin.erlang"},"4":{"name":"entity.name.function.macro.definition.erlang"},"5":{"name":"punctuation.definition.parameters.begin.erlang"}},"end":"(\\\\))\\\\s*(,)","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.erlang"},"2":{"name":"punctuation.separator.parameters.erlang"}},"patterns":[{"match":",","name":"punctuation.separator.parameters.erlang"},{"include":"#everything-else"}]},{"match":"\\\\|\\\\||[,.:;|]|->","name":"punctuation.separator.define.erlang"},{"include":"#everything-else"}]}]},"directive":{"patterns":[{"begin":"^\\\\s*+(-)\\\\s*+([a-z][@-Z_a-z\\\\d]*+)\\\\s*+(\\\\(?)","beginCaptures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.erlang"},"3":{"name":"punctuation.definition.parameters.begin.erlang"}},"end":"(\\\\)?)\\\\s*+(\\\\.)","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.erlang"},"2":{"name":"punctuation.section.directive.end.erlang"}},"name":"meta.directive.erlang","patterns":[{"include":"#everything-else"}]},{"captures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.erlang"},"3":{"name":"punctuation.section.directive.end.erlang"}},"match":"^\\\\s*+(-)\\\\s*+([a-z][@-Z_a-z\\\\d]*+)\\\\s*+(\\\\.)","name":"meta.directive.erlang"}]},"docstring":{"begin":"(?<!\\")((\\"{3,})\\\\s*)(\\\\S.*)?$","beginCaptures":{"1":{"name":"meta.string.quoted.triple.begin.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"},"3":{"name":"invalid.illegal.string.erlang"}},"end":"^(\\\\s*(\\\\2))(?!\\")","endCaptures":{"1":{"name":"meta.string.quoted.triple.end.erlang"},"2":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.triple.erlang"},"everything-else":{"patterns":[{"include":"#comment"},{"include":"#record-usage"},{"include":"#macro-usage"},{"include":"#expression"},{"include":"#keyword"},{"include":"#textual-operator"},{"include":"#language-constant"},{"include":"#function-call"},{"include":"#tuple"},{"include":"#list"},{"include":"#binary"},{"include":"#parenthesized-expression"},{"include":"#character"},{"include":"#number"},{"include":"#atom"},{"include":"#sigil-docstring"},{"include":"#sigil-string"},{"include":"#docstring"},{"include":"#string"},{"include":"#symbolic-operator"},{"include":"#variable"}]},"expression":{"patterns":[{"begin":"\\\\b(if)\\\\b","beginCaptures":{"1":{"name":"keyword.control.if.erlang"}},"end":"\\\\b(end)\\\\b","endCaptures":{"1":{"name":"keyword.control.end.erlang"}},"name":"meta.expression.if.erlang","patterns":[{"include":"#internal-expression-punctuation"},{"include":"#everything-else"}]},{"begin":"\\\\b(case)\\\\b","beginCaptures":{"1":{"name":"keyword.control.case.erlang"}},"end":"\\\\b(end)\\\\b","endCaptures":{"1":{"name":"keyword.control.end.erlang"}},"name":"meta.expression.case.erlang","patterns":[{"include":"#internal-expression-punctuation"},{"include":"#everything-else"}]},{"begin":"\\\\b(receive)\\\\b","beginCaptures":{"1":{"name":"keyword.control.receive.erlang"}},"end":"\\\\b(end)\\\\b","endCaptures":{"1":{"name":"keyword.control.end.erlang"}},"name":"meta.expression.receive.erlang","patterns":[{"include":"#internal-expression-punctuation"},{"include":"#everything-else"}]},{"captures":{"1":{"name":"keyword.control.fun.erlang"},"4":{"name":"entity.name.type.class.module.erlang"},"5":{"name":"variable.other.erlang"},"6":{"name":"punctuation.separator.module-function.erlang"},"8":{"name":"entity.name.function.erlang"},"9":{"name":"variable.other.erlang"},"10":{"name":"punctuation.separator.function-arity.erlang"}},"match":"\\\\b(fun)\\\\s+((([a-z][@-Z_a-z\\\\d]*+)|(_[@-Z_a-z\\\\d]++|[A-Z][@-Z_a-z\\\\d]*+))\\\\s*+(:)\\\\s*+)?(([a-z][@-Z_a-z\\\\d]*+|'[^']*+')|(_[@-Z_a-z\\\\d]++|[A-Z][@-Z_a-z\\\\d]*+))\\\\s*(/)","name":"meta.expression.fun.implicit.erlang"},{"begin":"\\\\b(fun)\\\\s+(([a-z][@-Z_a-z\\\\d]*+)|(_[@-Z_a-z\\\\d]++|[A-Z][@-Z_a-z\\\\d]*+))\\\\s*+(:)","beginCaptures":{"1":{"name":"keyword.control.fun.erlang"},"3":{"name":"entity.name.type.class.module.erlang"},"4":{"name":"variable.other.erlang"},"5":{"name":"punctuation.separator.module-function.erlang"}},"end":"(/)","endCaptures":{"1":{"name":"punctuation.separator.function-arity.erlang"}},"name":"meta.expression.fun.implicit.erlang","patterns":[{"include":"#everything-else"}]},{"begin":"\\\\b(fun)\\\\s+(?!\\\\()","beginCaptures":{"1":{"name":"keyword.control.fun.erlang"}},"end":"(/)","endCaptures":{"1":{"name":"punctuation.separator.function-arity.erlang"}},"name":"meta.expression.fun.implicit.erlang","patterns":[{"include":"#everything-else"}]},{"begin":"\\\\b(fun)\\\\s*+(\\\\()(?=(\\\\s*+\\\\()|(\\\\)))","beginCaptures":{"1":{"name":"entity.name.function.erlang"},"2":{"name":"punctuation.definition.parameters.begin.erlang"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.erlang"}},"patterns":[{"include":"#everything-else"}]},{"begin":"\\\\b(fun)\\\\b","beginCaptures":{"1":{"name":"keyword.control.fun.erlang"}},"end":"\\\\b(end)\\\\b","endCaptures":{"1":{"name":"keyword.control.end.erlang"}},"name":"meta.expression.fun.erlang","patterns":[{"begin":"(?=\\\\()","end":"(;)|(?=\\\\bend\\\\b)","endCaptures":{"1":{"name":"punctuation.separator.clauses.erlang"}},"patterns":[{"include":"#internal-function-parts"}]},{"include":"#everything-else"}]},{"begin":"\\\\b(try)\\\\b","beginCaptures":{"1":{"name":"keyword.control.try.erlang"}},"end":"\\\\b(end)\\\\b","endCaptures":{"1":{"name":"keyword.control.end.erlang"}},"name":"meta.expression.try.erlang","patterns":[{"include":"#internal-expression-punctuation"},{"include":"#everything-else"}]},{"begin":"\\\\b(begin)\\\\b","beginCaptures":{"1":{"name":"keyword.control.begin.erlang"}},"end":"\\\\b(end)\\\\b","endCaptures":{"1":{"name":"keyword.control.end.erlang"}},"name":"meta.expression.begin.erlang","patterns":[{"include":"#internal-expression-punctuation"},{"include":"#everything-else"}]},{"begin":"\\\\b(maybe)\\\\b","beginCaptures":{"1":{"name":"keyword.control.maybe.erlang"}},"end":"\\\\b(end)\\\\b","endCaptures":{"1":{"name":"keyword.control.end.erlang"}},"name":"meta.expression.maybe.erlang","patterns":[{"include":"#internal-expression-punctuation"},{"include":"#everything-else"}]}]},"function":{"begin":"^\\\\s*+([a-z][@-Z_a-z\\\\d]*+|'[^']*+')\\\\s*+(?=\\\\()","beginCaptures":{"1":{"name":"entity.name.function.definition.erlang"}},"end":"(\\\\.)","endCaptures":{"1":{"name":"punctuation.terminator.function.erlang"}},"name":"meta.function.erlang","patterns":[{"captures":{"1":{"name":"entity.name.function.erlang"}},"match":"^\\\\s*+([a-z][@-Z_a-z\\\\d]*+|'[^']*+')\\\\s*+(?=\\\\()"},{"begin":"(?=\\\\()","end":"(;)|(?=\\\\.)","endCaptures":{"1":{"name":"punctuation.separator.clauses.erlang"}},"patterns":[{"include":"#parenthesized-expression"},{"include":"#internal-function-parts"}]},{"include":"#everything-else"}]},"function-call":{"begin":"(?=([a-z][@-Z_a-z\\\\d]*+|'[^']*+'|_[@-Z_a-z\\\\d]++|[A-Z][@-Z_a-z\\\\d]*+)\\\\s*+(\\\\(|:\\\\s*+([a-z][@-Z_a-z\\\\d]*+|'[^']*+'|_[@-Z_a-z\\\\d]++|[A-Z][@-Z_a-z\\\\d]*+)\\\\s*+\\\\())","end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.erlang"}},"name":"meta.function-call.erlang","patterns":[{"begin":"((erlang)\\\\s*+(:)\\\\s*+)?(is_atom|is_binary|is_constant|is_float|is_function|is_integer|is_list|is_number|is_pid|is_port|is_reference|is_tuple|is_record|abs|element|hd|length|node|round|self|size|tl|trunc)\\\\s*+(\\\\()","beginCaptures":{"2":{"name":"entity.name.type.class.module.erlang"},"3":{"name":"punctuation.separator.module-function.erlang"},"4":{"name":"entity.name.function.guard.erlang"},"5":{"name":"punctuation.definition.parameters.begin.erlang"}},"end":"(?=\\\\))","patterns":[{"match":",","name":"punctuation.separator.parameters.erlang"},{"include":"#everything-else"}]},{"begin":"((([a-z][@-Z_a-z\\\\d]*+|'[^']*+')|(_[@-Z_a-z\\\\d]++|[A-Z][@-Z_a-z\\\\d]*+))\\\\s*+(:)\\\\s*+)?(([a-z][@-Z_a-z\\\\d]*+|'[^']*+')|(_[@-Z_a-z\\\\d]++|[A-Z][@-Z_a-z\\\\d]*+))\\\\s*+(\\\\()","beginCaptures":{"3":{"name":"entity.name.type.class.module.erlang"},"4":{"name":"variable.other.erlang"},"5":{"name":"punctuation.separator.module-function.erlang"},"7":{"name":"entity.name.function.erlang"},"8":{"name":"variable.other.erlang"},"9":{"name":"punctuation.definition.parameters.begin.erlang"}},"end":"(?=\\\\))","patterns":[{"match":",","name":"punctuation.separator.parameters.erlang"},{"include":"#everything-else"}]}]},"import-export-directive":{"patterns":[{"begin":"^\\\\s*+(-)\\\\s*+(import)\\\\s*+(\\\\()\\\\s*+([a-z][@-Z_a-z\\\\d]*+|'[^']*+')\\\\s*+(,)","beginCaptures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.import.erlang"},"3":{"name":"punctuation.definition.parameters.begin.erlang"},"4":{"name":"entity.name.type.class.module.erlang"},"5":{"name":"punctuation.separator.parameters.erlang"}},"end":"(\\\\))\\\\s*+(\\\\.)","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.erlang"},"2":{"name":"punctuation.section.directive.end.erlang"}},"name":"meta.directive.import.erlang","patterns":[{"include":"#internal-function-list"}]},{"begin":"^\\\\s*+(-)\\\\s*+(export)\\\\s*+(\\\\()","beginCaptures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.export.erlang"},"3":{"name":"punctuation.definition.parameters.begin.erlang"}},"end":"(\\\\))\\\\s*+(\\\\.)","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.erlang"},"2":{"name":"punctuation.section.directive.end.erlang"}},"name":"meta.directive.export.erlang","patterns":[{"include":"#internal-function-list"}]}]},"internal-expression-punctuation":{"captures":{"1":{"name":"punctuation.separator.clause-head-body.erlang"},"2":{"name":"punctuation.separator.clauses.erlang"},"3":{"name":"punctuation.separator.expressions.erlang"}},"match":"(->)|(;)|(,)"},"internal-function-list":{"begin":"(\\\\[)","beginCaptures":{"1":{"name":"punctuation.definition.list.begin.erlang"}},"end":"(])","endCaptures":{"1":{"name":"punctuation.definition.list.end.erlang"}},"name":"meta.structure.list.function.erlang","patterns":[{"begin":"([a-z][@-Z_a-z\\\\d]*+|'[^']*+')\\\\s*+(/)","beginCaptures":{"1":{"name":"entity.name.function.erlang"},"2":{"name":"punctuation.separator.function-arity.erlang"}},"end":"(,)|(?=])","endCaptures":{"1":{"name":"punctuation.separator.list.erlang"}},"patterns":[{"include":"#everything-else"}]},{"include":"#everything-else"}]},"internal-function-parts":{"patterns":[{"begin":"(?=\\\\()","end":"(->)","endCaptures":{"1":{"name":"punctuation.separator.clause-head-body.erlang"}},"patterns":[{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.definition.parameters.begin.erlang"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.erlang"}},"patterns":[{"match":",","name":"punctuation.separator.parameters.erlang"},{"include":"#everything-else"}]},{"match":"[,;]","name":"punctuation.separator.guards.erlang"},{"include":"#everything-else"}]},{"match":",","name":"punctuation.separator.expressions.erlang"},{"include":"#everything-else"}]},"internal-record-body":{"begin":"(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.class.record.begin.erlang"}},"end":"(})","endCaptures":{"1":{"name":"punctuation.definition.class.record.end.erlang"}},"name":"meta.structure.record.erlang","patterns":[{"begin":"(([a-z][@-Z_a-z\\\\d]*+|'[^']*+')|(_))","beginCaptures":{"2":{"name":"variable.other.field.erlang"},"3":{"name":"variable.language.omitted.field.erlang"}},"end":"(,)|(?=})","endCaptures":{"1":{"name":"punctuation.separator.class.record.erlang"}},"patterns":[{"include":"#everything-else"}]},{"include":"#everything-else"}]},"internal-string-body":{"patterns":[{"captures":{"1":{"name":"punctuation.definition.escape.erlang"},"3":{"name":"punctuation.definition.escape.erlang"}},"match":"(\\\\\\\\)([\\"'\\\\\\\\bdefnrstv]|(\\\\^)[@-_a-z]|[0-7]{1,3}|x[A-Fa-f\\\\d]{2})","name":"constant.character.escape.erlang"},{"match":"\\\\\\\\\\\\^?.?","name":"invalid.illegal.string.erlang"},{"captures":{"1":{"name":"punctuation.definition.placeholder.erlang"},"6":{"name":"punctuation.separator.placeholder-parts.erlang"},"10":{"name":"punctuation.separator.placeholder-parts.erlang"}},"match":"(~)((-)?\\\\d++|(\\\\*))?((\\\\.)(\\\\d++|(\\\\*))?((\\\\.)((\\\\*)|.))?)?[Kklt]*[#+BPWXbcefginpswx~]","name":"constant.character.format.placeholder.other.erlang"},{"captures":{"1":{"name":"punctuation.definition.placeholder.erlang"}},"match":"(~)(\\\\*)?(\\\\d++)?(t)?[-#acdflsu~]","name":"constant.character.format.placeholder.other.erlang"},{"match":"~[^\\"]?","name":"invalid.illegal.string.erlang"}]},"internal-type-specifiers":{"begin":"(/)","beginCaptures":{"1":{"name":"punctuation.separator.value-type.erlang"}},"end":"(?=[,:]|>>)","patterns":[{"captures":{"1":{"name":"storage.type.erlang"},"2":{"name":"storage.modifier.signedness.erlang"},"3":{"name":"storage.modifier.endianness.erlang"},"4":{"name":"storage.modifier.unit.erlang"},"5":{"name":"punctuation.separator.unit-specifiers.erlang"},"6":{"name":"constant.numeric.integer.decimal.erlang"},"7":{"name":"punctuation.separator.type-specifiers.erlang"}},"match":"(integer|float|binary|bytes|bitstring|bits|utf8|utf16|utf32)|((?:|un)signed)|(big|little|native)|(unit)(:)(\\\\d++)|(-)"}]},"keyword":{"match":"\\\\b(after|begin|case|catch|cond|end|fun|if|let|of|try|receive|when|maybe|else)\\\\b","name":"keyword.control.erlang"},"language-constant":{"match":"\\\\b(false|true|undefined)\\\\b","name":"constant.language"},"list":{"begin":"(\\\\[)","beginCaptures":{"1":{"name":"punctuation.definition.list.begin.erlang"}},"end":"(])","endCaptures":{"1":{"name":"punctuation.definition.list.end.erlang"}},"name":"meta.structure.list.erlang","patterns":[{"match":"\\\\||\\\\|\\\\||,","name":"punctuation.separator.list.erlang"},{"include":"#everything-else"}]},"macro-directive":{"patterns":[{"captures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.ifdef.erlang"},"3":{"name":"punctuation.definition.parameters.begin.erlang"},"4":{"name":"entity.name.function.macro.erlang"},"5":{"name":"punctuation.definition.parameters.end.erlang"},"6":{"name":"punctuation.section.directive.end.erlang"}},"match":"^\\\\s*+(-)\\\\s*+(ifdef)\\\\s*+(\\\\()\\\\s*+([@-z\\\\d]++)\\\\s*+(\\\\))\\\\s*+(\\\\.)","name":"meta.directive.ifdef.erlang"},{"captures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.ifndef.erlang"},"3":{"name":"punctuation.definition.parameters.begin.erlang"},"4":{"name":"entity.name.function.macro.erlang"},"5":{"name":"punctuation.definition.parameters.end.erlang"},"6":{"name":"punctuation.section.directive.end.erlang"}},"match":"^\\\\s*+(-)\\\\s*+(ifndef)\\\\s*+(\\\\()\\\\s*+([@-z\\\\d]++)\\\\s*+(\\\\))\\\\s*+(\\\\.)","name":"meta.directive.ifndef.erlang"},{"captures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.undef.erlang"},"3":{"name":"punctuation.definition.parameters.begin.erlang"},"4":{"name":"entity.name.function.macro.erlang"},"5":{"name":"punctuation.definition.parameters.end.erlang"},"6":{"name":"punctuation.section.directive.end.erlang"}},"match":"^\\\\s*+(-)\\\\s*+(undef)\\\\s*+(\\\\()\\\\s*+([@-z\\\\d]++)\\\\s*+(\\\\))\\\\s*+(\\\\.)","name":"meta.directive.undef.erlang"}]},"macro-usage":{"captures":{"1":{"name":"keyword.operator.macro.erlang"},"2":{"name":"entity.name.function.macro.erlang"}},"match":"(\\\\?\\\\??)\\\\s*+([@-Z_a-z\\\\d]++)","name":"meta.macro-usage.erlang"},"module-directive":{"captures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.module.erlang"},"3":{"name":"punctuation.definition.parameters.begin.erlang"},"4":{"name":"entity.name.type.class.module.definition.erlang"},"5":{"name":"punctuation.definition.parameters.end.erlang"},"6":{"name":"punctuation.section.directive.end.erlang"}},"match":"^\\\\s*+(-)\\\\s*+(module)\\\\s*+(\\\\()\\\\s*+([a-z][@-Z_a-z\\\\d]*+)\\\\s*+(\\\\))\\\\s*+(\\\\.)","name":"meta.directive.module.erlang"},"number":{"begin":"(?=\\\\d)","end":"(?!\\\\d)","patterns":[{"captures":{"1":{"name":"punctuation.separator.integer-float.erlang"},"2":{"name":"punctuation.separator.float-exponent.erlang"}},"match":"\\\\d++(\\\\.)\\\\d++([Ee][-+]?\\\\d++)?","name":"constant.numeric.float.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"2(#)([01]++_)*[01]++","name":"constant.numeric.integer.binary.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"3(#)([012]++_)*[012]++","name":"constant.numeric.integer.base-3.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"4(#)([0-3]++_)*[0-3]++","name":"constant.numeric.integer.base-4.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"5(#)([0-4]++_)*[0-4]++","name":"constant.numeric.integer.base-5.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"6(#)([0-5]++_)*[0-5]++","name":"constant.numeric.integer.base-6.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"7(#)([0-6]++_)*[0-6]++","name":"constant.numeric.integer.base-7.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"8(#)([0-7]++_)*[0-7]++","name":"constant.numeric.integer.octal.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"9(#)([0-8]++_)*[0-8]++","name":"constant.numeric.integer.base-9.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"10(#)(\\\\d++_)*\\\\d++","name":"constant.numeric.integer.decimal.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"11(#)([Aa\\\\d]++_)*[Aa\\\\d]++","name":"constant.numeric.integer.base-11.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"12(#)([ABab\\\\d]++_)*[ABab\\\\d]++","name":"constant.numeric.integer.base-12.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"13(#)([ABCabc\\\\d]++_)*[ABCabc\\\\d]++","name":"constant.numeric.integer.base-13.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"14(#)([A-Da-d\\\\d]++_)*[A-Da-d\\\\d]++","name":"constant.numeric.integer.base-14.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"15(#)([A-Ea-e\\\\d]++_)*[A-Ea-e\\\\d]++","name":"constant.numeric.integer.base-15.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"16(#)([A-Fa-f\\\\d]++_)*[A-Fa-f\\\\d]++","name":"constant.numeric.integer.hexadecimal.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"17(#)([A-Ga-g\\\\d]++_)*[A-Ga-g\\\\d]++","name":"constant.numeric.integer.base-17.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"18(#)([A-Ha-h\\\\d]++_)*[A-Ha-h\\\\d]++","name":"constant.numeric.integer.base-18.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"19(#)([A-Ia-i\\\\d]++_)*[A-Ia-i\\\\d]++","name":"constant.numeric.integer.base-19.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"20(#)([A-Ja-j\\\\d]++_)*[A-Ja-j\\\\d]++","name":"constant.numeric.integer.base-20.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"21(#)([A-Ka-k\\\\d]++_)*[A-Ka-k\\\\d]++","name":"constant.numeric.integer.base-21.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"22(#)([A-La-l\\\\d]++_)*[A-La-l\\\\d]++","name":"constant.numeric.integer.base-22.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"23(#)([A-Ma-m\\\\d]++_)*[A-Ma-m\\\\d]++","name":"constant.numeric.integer.base-23.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"24(#)([A-Na-n\\\\d]++_)*[A-Na-n\\\\d]++","name":"constant.numeric.integer.base-24.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"25(#)([A-Oa-o\\\\d]++_)*[A-Oa-o\\\\d]++","name":"constant.numeric.integer.base-25.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"26(#)([A-Pa-p\\\\d]++_)*[A-Pa-p\\\\d]++","name":"constant.numeric.integer.base-26.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"27(#)([A-Qa-q\\\\d]++_)*[A-Qa-q\\\\d]++","name":"constant.numeric.integer.base-27.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"28(#)([A-Ra-r\\\\d]++_)*[A-Ra-r\\\\d]++","name":"constant.numeric.integer.base-28.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"29(#)([A-Sa-s\\\\d]++_)*[A-Sa-s\\\\d]++","name":"constant.numeric.integer.base-29.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"30(#)([A-Ta-t\\\\d]++_)*[A-Ta-t\\\\d]++","name":"constant.numeric.integer.base-30.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"31(#)([A-Ua-u\\\\d]++_)*[A-Ua-u\\\\d]++","name":"constant.numeric.integer.base-31.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"32(#)([A-Va-v\\\\d]++_)*[A-Va-v\\\\d]++","name":"constant.numeric.integer.base-32.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"33(#)([A-Wa-w\\\\d]++_)*[A-Wa-w\\\\d]++","name":"constant.numeric.integer.base-33.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"34(#)([A-Xa-x\\\\d]++_)*[A-Xa-x\\\\d]++","name":"constant.numeric.integer.base-34.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"35(#)([A-Ya-y\\\\d]++_)*[A-Ya-y\\\\d]++","name":"constant.numeric.integer.base-35.erlang"},{"captures":{"1":{"name":"punctuation.separator.base-integer.erlang"}},"match":"36(#)([A-Za-z\\\\d]++_)*[A-Za-z\\\\d]++","name":"constant.numeric.integer.base-36.erlang"},{"match":"\\\\d++#([A-Za-z\\\\d]++_)*[A-Za-z\\\\d]++","name":"invalid.illegal.integer.erlang"},{"match":"(\\\\d++_)*\\\\d++","name":"constant.numeric.integer.decimal.erlang"}]},"parenthesized-expression":{"begin":"(\\\\()","beginCaptures":{"1":{"name":"punctuation.section.expression.begin.erlang"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.section.expression.end.erlang"}},"name":"meta.expression.parenthesized","patterns":[{"include":"#everything-else"}]},"record-directive":{"begin":"^\\\\s*+(-)\\\\s*+(record)\\\\s*+(\\\\()\\\\s*+([a-z][@-Z_a-z\\\\d]*+|'[^']*+')\\\\s*+(,)","beginCaptures":{"1":{"name":"punctuation.section.directive.begin.erlang"},"2":{"name":"keyword.control.directive.import.erlang"},"3":{"name":"punctuation.definition.parameters.begin.erlang"},"4":{"name":"entity.name.type.class.record.definition.erlang"},"5":{"name":"punctuation.separator.parameters.erlang"}},"end":"(\\\\))\\\\s*+(\\\\.)","endCaptures":{"1":{"name":"punctuation.definition.parameters.end.erlang"},"2":{"name":"punctuation.section.directive.end.erlang"}},"name":"meta.directive.record.erlang","patterns":[{"include":"#internal-record-body"},{"include":"#comment"}]},"record-usage":{"patterns":[{"captures":{"1":{"name":"keyword.operator.record.erlang"},"2":{"name":"entity.name.type.class.record.erlang"},"3":{"name":"punctuation.separator.record-field.erlang"},"4":{"name":"variable.other.field.erlang"}},"match":"(#)\\\\s*+([a-z][@-Z_a-z\\\\d]*+|'[^']*+')\\\\s*+(\\\\.)\\\\s*+([a-z][@-Z_a-z\\\\d]*+|'[^']*+')","name":"meta.record-usage.erlang"},{"begin":"(#)\\\\s*+([a-z][@-Z_a-z\\\\d]*+|'[^']*+')","beginCaptures":{"1":{"name":"keyword.operator.record.erlang"},"2":{"name":"entity.name.type.class.record.erlang"}},"end":"(?<=})","name":"meta.record-usage.erlang","patterns":[{"include":"#internal-record-body"}]}]},"sigil-docstring":{"begin":"(~[BSbs]?)((\\"{3,})\\\\s*)(\\\\S.*)?$","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"meta.string.quoted.triple.begin.erlang"},"3":{"name":"punctuation.definition.string.begin.erlang"},"4":{"name":"invalid.illegal.string.erlang"}},"end":"^(\\\\s*(\\\\3))(?!\\")","endCaptures":{"1":{"name":"meta.string.quoted.triple.end.erlang"},"2":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.tripple.sigil.erlang"},"sigil-string":{"patterns":[{"include":"#sigil-string-parenthesis"},{"include":"#sigil-string-parenthesis-verbatim"},{"include":"#sigil-string-curly-brackets"},{"include":"#sigil-string-curly-brackets-verbatim"},{"include":"#sigil-string-square-brackets"},{"include":"#sigil-string-square-brackets-verbatim"},{"include":"#sigil-string-less-greater"},{"include":"#sigil-string-less-greater-verbatim"},{"include":"#sigil-string-single-character"},{"include":"#sigil-string-single-character-verbatim"},{"include":"#sigil-string-single-quote"},{"include":"#sigil-string-single-quote-verbatim"},{"include":"#sigil-string-double-quote"},{"include":"#sigil-string-double-quote-verbatim"}]},"sigil-string-curly-brackets":{"begin":"(~[bs]?)(\\\\{)","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"(})","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.curly-brackets.sigil.erlang","patterns":[{"include":"#internal-string-body"}]},"sigil-string-curly-brackets-verbatim":{"begin":"(~[BS])(\\\\{)","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"(})","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.curly-brackets.sigil.erlang"},"sigil-string-double-quote":{"begin":"(~[bs]?)(\\")","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.double.sigil.erlang","patterns":[{"include":"#internal-string-body"}]},"sigil-string-double-quote-verbatim":{"begin":"(~[BS])(\\")","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.double.sigil.erlang"},"sigil-string-less-greater":{"begin":"(~[bs]?)(<)","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"(>)","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.less-greater.sigil.erlang","patterns":[{"include":"#internal-string-body"}]},"sigil-string-less-greater-verbatim":{"begin":"(~[BS])(<)","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"(>)","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.less-greater.sigil.erlang"},"sigil-string-parenthesis":{"begin":"(~[bs]?)(\\\\()","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.parenthesis.sigil.erlang","patterns":[{"include":"#internal-string-body"}]},"sigil-string-parenthesis-verbatim":{"begin":"(~[BS])(\\\\()","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"(\\\\))","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.parenthesis.sigil.erlang"},"sigil-string-single-character":{"begin":"(~[bs]?)([#/\`|])","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.other.sigil.erlang","patterns":[{"include":"#internal-string-body"}]},"sigil-string-single-character-verbatim":{"begin":"(~[BS])([#/\`|])","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.other.sigil.erlang"},"sigil-string-single-quote":{"begin":"(~[bs]?)(')","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.single.sigil.erlang","patterns":[{"include":"#internal-string-body"}]},"sigil-string-single-quote-verbatim":{"begin":"(~[BS])(')","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"(\\\\2)","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.single.sigil.erlang"},"sigil-string-square-brackets":{"begin":"(~[bs]?)(\\\\[)","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"(])","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.square-brackets.sigil.erlang","patterns":[{"include":"#internal-string-body"}]},"sigil-string-square-brackets-verbatim":{"begin":"(~[BS])(\\\\[)","beginCaptures":{"1":{"name":"storage.type.string.erlang"},"2":{"name":"punctuation.definition.string.begin.erlang"}},"end":"(])","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.square-brackets.sigil.erlang"},"string":{"begin":"(\\")","beginCaptures":{"1":{"name":"punctuation.definition.string.begin.erlang"}},"end":"(\\")","endCaptures":{"1":{"name":"punctuation.definition.string.end.erlang"}},"name":"string.quoted.double.erlang","patterns":[{"include":"#internal-string-body"}]},"symbolic-operator":{"match":"\\\\+\\\\+|\\\\+|--|[-*]|/=|/|=/=|=:=|==|=<|=|<-|<|>=|[!>]|::|\\\\?=","name":"keyword.operator.symbolic.erlang"},"textual-operator":{"match":"\\\\b(andalso|band|and|bxor|xor|bor|orelse|or|bnot|not|bsl|bsr|div|rem)\\\\b","name":"keyword.operator.textual.erlang"},"tuple":{"begin":"(\\\\{)","beginCaptures":{"1":{"name":"punctuation.definition.tuple.begin.erlang"}},"end":"(})","endCaptures":{"1":{"name":"punctuation.definition.tuple.end.erlang"}},"name":"meta.structure.tuple.erlang","patterns":[{"match":",","name":"punctuation.separator.tuple.erlang"},{"include":"#everything-else"}]},"variable":{"captures":{"1":{"name":"variable.other.erlang"},"2":{"name":"variable.language.omitted.erlang"}},"match":"(_[@-Z_a-z\\\\d]++|[A-Z][@-Z_a-z\\\\d]*+)|(_)"}},"scopeName":"source.erlang","aliases":["erl"]}`)), n = [
e
];
export {
n as default
};
//# sourceMappingURL=erlang-DzW6MnOn.js.map