const lang = Object.freeze({ "displayName": "Solidity", "fileTypes": ["sol"], "name": "solidity", "patterns": [{ "include": "#natspec" }, { "include": "#declaration-userType" }, { "include": "#comment" }, { "include": "#operator" }, { "include": "#global" }, { "include": "#control" }, { "include": "#constant" }, { "include": "#primitive" }, { "include": "#type-primitive" }, { "include": "#type-modifier-extended-scope" }, { "include": "#declaration" }, { "include": "#function-call" }, { "include": "#assembly" }, { "include": "#punctuation" }], "repository": { "assembly": { "patterns": [{ "match": "\\b(assembly)\\b", "name": "keyword.control.assembly" }, { "match": "\\b(let)\\b", "name": "storage.type.assembly" }] }, "comment": { "patterns": [{ "include": "#comment-line" }, { "include": "#comment-block" }] }, "comment-block": { "begin": "/\\*", "end": "\\*/", "name": "comment.block", "patterns": [{ "include": "#comment-todo" }] }, "comment-line": { "begin": "(?>)", "name": "keyword.operator.binary" }, "operator-logic": { "match": "(==|\\!=|<(?!<)|<=|>(?!>)|>=|\\&\\&|\\|\\||\\:(?!=)|\\?|\\!)", "name": "keyword.operator.logic" }, "operator-mapping": { "match": "(=>)", "name": "keyword.operator.mapping" }, "primitive": { "patterns": [{ "include": "#number-decimal" }, { "include": "#number-hex" }, { "include": "#number-scientific" }, { "include": "#string" }] }, "punctuation": { "patterns": [{ "match": ";", "name": "punctuation.terminator.statement" }, { "match": "\\.", "name": "punctuation.accessor" }, { "match": ",", "name": "punctuation.separator" }, { "match": "\\{", "name": "punctuation.brace.curly.begin" }, { "match": "\\}", "name": "punctuation.brace.curly.end" }, { "match": "\\[", "name": "punctuation.brace.square.begin" }, { "match": "\\]", "name": "punctuation.brace.square.end" }, { "match": "\\(", "name": "punctuation.parameters.begin" }, { "match": "\\)", "name": "punctuation.parameters.end" }] }, "string": { "patterns": [{ "match": '\\"(?:\\\\"|[^\\"])*\\"', "name": "string.quoted.double" }, { "match": "\\'(?:\\\\'|[^\\'])*\\'", "name": "string.quoted.single" }] }, "type-modifier-access": { "match": "\\b(internal|external|private|public)\\b", "name": "storage.type.modifier.access" }, "type-modifier-constant": { "match": "\\b(constant)\\b", "name": "storage.type.modifier.readonly" }, "type-modifier-extended-scope": { "match": "\\b(pure|view|inherited|indexed|storage|memory|virtual|calldata|override|abstract)\\b", "name": "storage.type.modifier.extendedscope" }, "type-modifier-immutable": { "match": "\\b(immutable)\\b", "name": "storage.type.modifier.readonly" }, "type-modifier-payable": { "match": "\\b(nonpayable|payable)\\b", "name": "storage.type.modifier.payable" }, "type-primitive": { "patterns": [{ "begin": "\\b(address|string\\d*|bytes\\d*|int\\d*|uint\\d*|bool|hash\\d*)\\b(?:\\[\\])(\\()", "beginCaptures": { "1": { "name": "support.type.primitive" } }, "end": "(\\))", "patterns": [{ "include": "#primitive" }, { "include": "#punctuation" }, { "include": "#global" }, { "include": "#variable" }] }, { "match": "\\b(address|string\\d*|bytes\\d*|int\\d*|uint\\d*|bool|hash\\d*)\\b", "name": "support.type.primitive" }] }, "variable": { "patterns": [{ "captures": { "1": { "name": "variable.parameter.function" } }, "match": "\\b(\\_\\w+)\\b" }, { "captures": { "1": { "name": "support.variable.property" } }, "match": "(?:\\.)(\\w+)\\b" }, { "captures": { "1": { "name": "variable.parameter.other" } }, "match": "\\b(\\w+)\\b" }] } }, "scopeName": "source.solidity" }); var solidity = [ lang ]; export { solidity as default };