function e(e){return new RegExp(e.replace(/[-/\\^$*+?.()|[\]{}]/g,`\\$&`),`m`)}function t(e){return e?typeof e==`string`?e:e.source:null}function n(e){return r(`(?=`,e,`)`)}function r(...e){return e.map(e=>t(e)).join(``)}function i(e){let t=e[e.length-1];return typeof t==`object`&&t.constructor===Object?(e.splice(e.length-1,1),t):{}}function a(...e){return`(`+(i(e).capture?``:`?:`)+e.map(e=>t(e)).join(`|`)+`)`}function o(t){let i=`abstract.and.as.assert.base.begin.class.default.delegate.do.done.downcast.downto.elif.else.end.exception.extern.finally.fixed.for.fun.function.global.if.in.inherit.inline.interface.internal.lazy.let.match.member.module.mutable.namespace.new.of.open.or.override.private.public.rec.return.static.struct.then.to.try.type.upcast.use.val.void.when.while.with.yield`.split(`.`),o={scope:`keyword`,match:/\b(yield|return|let|do|match|use)!/},s=[`if`,`else`,`endif`,`line`,`nowarn`,`light`,`r`,`i`,`I`,`load`,`time`,`help`,`quit`],c=[`true`,`false`,`null`,`Some`,`None`,`Ok`,`Error`,`infinity`,`infinityf`,`nan`,`nanf`],l=[`__LINE__`,`__SOURCE_DIRECTORY__`,`__SOURCE_FILE__`],u=`bool.byte.sbyte.int8.int16.int32.uint8.uint16.uint32.int.uint.int64.uint64.nativeint.unativeint.decimal.float.double.float32.single.char.string.unit.bigint.option.voption.list.array.seq.byref.exn.inref.nativeptr.obj.outref.voidptr.Result`.split(`.`),d={keyword:i,literal:c,built_in:`not.ref.raise.reraise.dict.readOnlyDict.set.get.enum.sizeof.typeof.typedefof.nameof.nullArg.invalidArg.invalidOp.id.fst.snd.ignore.lock.using.box.unbox.tryUnbox.printf.printfn.sprintf.eprintf.eprintfn.fprintf.fprintfn.failwith.failwithf`.split(`.`),"variable.constant":l},f={variants:[t.COMMENT(/\(\*(?!\))/,/\*\)/,{contains:[`self`]}),t.C_LINE_COMMENT_MODE]},p=/[a-zA-Z_](\w|')*/,m={scope:`variable`,begin:/``/,end:/``/},h=/\B('|\^)/,g={scope:`symbol`,variants:[{match:r(h,/``.*?``/)},{match:r(h,t.UNDERSCORE_IDENT_RE)}],relevance:0},_=function({includeEqual:t}){let i;i=t?`!%&*+-/<=>@^|~?`:`!%&*+-/<>@^|~?`;let o=r(`[`,...Array.from(i).map(e),`]`),s=a(o,/\./);return{scope:`operator`,match:a(a(r(r(s,n(s)),s,`*`),r(o,`+`)),/:\?>/,/:\?/,/:>/,/:=/,/::?/,/\$/),relevance:0}},v=_({includeEqual:!0}),y=_({includeEqual:!1}),b=function(e,i){return{begin:r(e,n(r(/\s*/,a(/\w/,/'/,/\^/,/#/,/``/,/\(/,/{\|/)))),beginScope:i,end:n(a(/\n/,/=/)),relevance:0,keywords:t.inherit(d,{type:u}),contains:[f,g,t.inherit(m,{scope:null}),y]}},x=b(/:/,`operator`),S=b(/\bof\b/,`keyword`),C={begin:[/(^|\s+)/,/type/,/\s+/,p],beginScope:{2:`keyword`,4:`title.class`},end:n(/\(|=|$/),keywords:d,contains:[f,t.inherit(m,{scope:null}),g,{scope:`operator`,match:/<|>/},x]},w={scope:`computation-expression`,match:/\b[_a-z]\w*(?=\s*\{)/},T={begin:[/^\s*/,r(/#/,a(...s)),/\b/],beginScope:{2:`meta`},end:n(/\s|$/)},E={variants:[t.BINARY_NUMBER_MODE,t.C_NUMBER_MODE]},D={scope:`string`,begin:/"/,end:/"/,contains:[t.BACKSLASH_ESCAPE]},O={scope:`string`,begin:/@"/,end:/"/,contains:[{match:/""/},t.BACKSLASH_ESCAPE]},k={scope:`string`,begin:/"""/,end:/"""/,relevance:2},A={scope:`subst`,begin:/\{/,end:/\}/,keywords:d},j={scope:`string`,begin:/\$"/,end:/"/,contains:[{match:/\{\{/},{match:/\}\}/},t.BACKSLASH_ESCAPE,A]},M={scope:`string`,begin:/(\$@|@\$)"/,end:/"/,contains:[{match:/\{\{/},{match:/\}\}/},{match:/""/},t.BACKSLASH_ESCAPE,A]},N={scope:`string`,begin:/\$"""/,end:/"""/,contains:[{match:/\{\{/},{match:/\}\}/},A],relevance:2},P={scope:`string`,match:r(/'/,a(/[^\\']/,/\\(?:.|\d{3}|x[a-fA-F\d]{2}|u[a-fA-F\d]{4}|U[a-fA-F\d]{8})/),/'/)};return A.contains=[M,j,O,D,P,o,f,m,x,w,T,E,g,v],{name:`F#`,aliases:[`fs`,`f#`],keywords:d,illegal:/\/\*/,classNameAliases:{"computation-expression":`keyword`},contains:[o,{variants:[N,M,j,k,O,D,P]},f,m,C,{scope:`meta`,begin:/\[</,end:/>\]/,relevance:2,contains:[m,k,O,D,P,E]},S,x,w,T,E,g,v]}}export{o as default};