const e=Object.freeze({displayName:"ActionScript",fileTypes:["as"],name:"actionscript-3",patterns:[{include:"#comments"},{include:"#package"},{include:"#class"},{include:"#interface"},{include:"#namespace_declaration"},{include:"#import"},{include:"#mxml"},{include:"#strings"},{include:"#regexp"},{include:"#variable_declaration"},{include:"#numbers"},{include:"#primitive_types"},{include:"#primitive_error_types"},{include:"#dynamic_type"},{include:"#primitive_functions"},{include:"#language_constants"},{include:"#language_variables"},{include:"#guess_type"},{include:"#guess_constant"},{include:"#other_operators"},{include:"#arithmetic_operators"},{include:"#logical_operators"},{include:"#array_access_operators"},{include:"#vector_creation_operators"},{include:"#control_keywords"},{include:"#other_keywords"},{include:"#use_namespace"},{include:"#functions"}],repository:{arithmetic_operators:{match:"(\\+|\\-|/|%|(?|\\^|!|\\?)",name:"keyword.operator.actionscript.3"},metadata:{begin:"\\[\\s*\\b(\\w+)\\b",beginCaptures:{1:{name:"keyword.other.actionscript.3"}},end:"\\]",name:"meta.metadata_info.actionscript.3",patterns:[{include:"#metadata_info"}]},metadata_info:{begin:"\\(",end:"\\)",patterns:[{include:"#strings"},{captures:{1:{name:"variable.parameter.actionscript.3"},2:{name:"keyword.operator.actionscript.3"}},match:"(\\w+)\\s*(=)"}]},method:{begin:"(?x) (^|\\s+) ((\\w+)\\s+)? ((\\w+)\\s+)? ((\\w+)\\s+)? ((\\w+)\\s+)? (?=\\bfunction\\b)",beginCaptures:{3:{name:"storage.modifier.actionscript.3"},5:{name:"storage.modifier.actionscript.3"},7:{name:"storage.modifier.actionscript.3"},8:{name:"storage.modifier.actionscript.3"}},end:"(?<=(;|\\}))",name:"meta.method.actionscript.3",patterns:[{include:"#functions"},{include:"#code_block"}]},mxml:{begin:"",name:"meta.cdata.actionscript.3",patterns:[{include:"#comments"},{include:"#import"},{include:"#metadata"},{include:"#class"},{include:"#namespace_declaration"},{include:"#use_namespace"},{include:"#class_declaration"},{include:"#method"},{include:"#comments"},{include:"#strings"},{include:"#regexp"},{include:"#numbers"},{include:"#primitive_types"},{include:"#primitive_error_types"},{include:"#dynamic_type"},{include:"#primitive_functions"},{include:"#language_constants"},{include:"#language_variables"},{include:"#other_keywords"},{include:"#guess_type"},{include:"#guess_constant"},{include:"#other_operators"},{include:"#arithmetic_operators"},{include:"#array_access_operators"},{include:"#vector_creation_operators"},{include:"#variable_declaration"}]},namespace_declaration:{captures:{2:{name:"storage.modifier.actionscript.3"},3:{name:"storage.modifier.actionscript.3"}},match:"(?x) ((\\w+)\\s+)? (namespace) \\s+ (?:[A-Za-z0-9_\\$]+)",name:"meta.namespace_declaration.actionscript.3"},numbers:{match:"\\b((0(x|X)[0-9a-fA-F]*)|(([0-9]+\\.?[0-9]*)|(\\.[0-9]+))((e|E)(\\+|-)?[0-9]+)?)(L|l|UL|ul|u|U|F|f)?\\b",name:"constant.numeric.actionscript.3"},object_literal:{begin:"\\{",end:"\\}",name:"meta.object_literal.actionscript.3",patterns:[{include:"#object_literal"},{include:"#comments"},{include:"#strings"},{include:"#regexp"},{include:"#numbers"},{include:"#primitive_types"},{include:"#primitive_error_types"},{include:"#dynamic_type"},{include:"#primitive_functions"},{include:"#language_constants"},{include:"#language_variables"},{include:"#guess_type"},{include:"#guess_constant"},{include:"#array_access_operators"},{include:"#vector_creation_operators"},{include:"#functions"}]},other_keywords:{match:"\\b(as|delete|in|instanceof|is|native|new|to|typeof)\\b",name:"keyword.other.actionscript.3"},other_operators:{match:"(\\.|=)",name:"keyword.operator.actionscript.3"},package:{begin:"(^|\\s+)(package)\\b",beginCaptures:{2:{name:"keyword.other.actionscript.3"}},end:"\\}",name:"meta.package.actionscript.3",patterns:[{include:"#package_name"},{include:"#variable_declaration"},{include:"#method"},{include:"#comments"},{include:"#return_type"},{include:"#import"},{include:"#use_namespace"},{include:"#strings"},{include:"#numbers"},{include:"#language_constants"},{include:"#metadata"},{include:"#class"},{include:"#interface"},{include:"#namespace_declaration"}]},package_name:{begin:"(?<=package)\\s+([\\w\\._]*)\\b",end:"\\{",name:"meta.package_name.actionscript.3"},parameters:{begin:"(\\.\\.\\.)?\\s*([A-Za-z\\_\\$][A-Za-z0-9_\\$]*)(?:\\s*(\\:)\\s*(?:(?:([A-Za-z\\$][A-Za-z0-9_\\$]+(?:\\.[A-Za-z\\$][A-Za-z0-9_\\$]+)*)(?:\\.<([A-Za-z\\$][A-Za-z0-9_\\$]+(?:\\.[A-Za-z\\$][A-Za-z0-9_\\$]+)*)>)?)|(\\*)))?(?:\\s*(=))?",beginCaptures:{1:{name:"keyword.operator.actionscript.3"},2:{name:"variable.parameter.actionscript.3"},3:{name:"keyword.operator.actionscript.3"},4:{name:"support.type.actionscript.3"},5:{name:"support.type.actionscript.3"},6:{name:"support.type.actionscript.3"},7:{name:"keyword.operator.actionscript.3"}},end:",|(?=\\))",patterns:[{include:"#strings"},{include:"#numbers"},{include:"#language_constants"},{include:"#comments"},{include:"#primitive_types"},{include:"#primitive_error_types"},{include:"#dynamic_type"},{include:"#guess_type"},{include:"#guess_constant"}]},primitive_error_types:{captures:{1:{name:"support.class.error.actionscript.3"}},match:"\\b((Argument|Definition|Eval|Internal|Range|Reference|Security|Syntax|Type|URI|Verify)?Error)\\b"},primitive_functions:{captures:{1:{name:"support.function.actionscript.3"}},match:"\\b(decodeURI|decodeURIComponent|encodeURI|encodeURIComponent|escape|isFinite|isNaN|isXMLName|parseFloat|parseInt|trace|unescape)(?=\\s*\\()"},primitive_types:{captures:{1:{name:"support.class.builtin.actionscript.3"}},match:"\\b(Array|Boolean|Class|Date|Function|int|JSON|Math|Namespace|Number|Object|QName|RegExp|String|uint|Vector|XML|XMLList|\\*(?<=a))\\b"},regexp:{begin:"(?<=[=(:,\\[]|^|return|&&|\\|\\||!)\\s*(/)(?![/*+{}?])",end:"$|(/)[igm]*",name:"string.regex.actionscript.3",patterns:[{match:"\\\\.",name:"constant.character.escape.actionscript.3"},{match:"\\[(\\\\\\]|[^\\]])*\\]",name:"constant.character.class.actionscript.3"}]},return_type:{captures:{1:{name:"keyword.operator.actionscript.3"},2:{name:"support.type.actionscript.3"},3:{name:"support.type.actionscript.3"},4:{name:"support.type.actionscript.3"}},match:"(\\:)\\s*(?:([A-Za-z\\$][A-Za-z0-9_\\$]+(?:\\.[A-Za-z\\$][A-Za-z0-9_\\$]+)*)(?:\\.<([A-Za-z\\$][A-Za-z0-9_\\$]+(?:\\.[A-Za-z\\$][A-Za-z0-9_\\$]+)*)>)?)|(\\*)"},strings:{patterns:[{begin:'"',end:'"',name:"string.quoted.double.actionscript.3",patterns:[{include:"#escapes"}]},{begin:"'",end:"'",name:"string.quoted.single.actionscript.3",patterns:[{include:"#escapes"}]}]},use_namespace:{captures:{2:{name:"keyword.other.actionscript.3"},3:{name:"keyword.other.actionscript.3"},4:{name:"storage.modifier.actionscript.3"}},match:"(?x) (^|\\s+|;) (use\\s+)? (namespace) \\s+ (\\w+) \\s* (;|$)"},variable_declaration:{captures:{2:{name:"storage.modifier.actionscript.3"},4:{name:"storage.modifier.actionscript.3"},6:{name:"storage.modifier.actionscript.3"},7:{name:"storage.modifier.actionscript.3"},8:{name:"keyword.operator.actionscript.3"}},match:"(?x) ((static)\\s+)? ((\\w+)\\s+)? ((static)\\s+)? (const|var) \\s+ (?:[A-Za-z0-9_\\$]+)(?:\\s*(:))?",name:"meta.variable_declaration.actionscript.3"},vector_creation_operators:{match:"(<|>)",name:"keyword.operator.actionscript.3"}},scopeName:"source.actionscript.3"});var t=[e];export{t as default};