[ {"type":"Comment","value":"(**\n# First-level heading\nSome more documentation using `Markdown`.\n*)"}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"module"}, {"type":"Text","value":" "}, {"type":"NameNamespace","value":"SampleCode.SimpleTypes"}, {"type":"Text","value":"\n\n"}, {"type":"Comment","value":"(**\nThis comments was making the whole file render as a comment.\n**)"}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Compiler directives\n"}, {"type":"Text","value":"\n"}, {"type":"CommentPreproc","value":"#if"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"true"}, {"type":"Text","value":"\n"}, {"type":"Operator","value":"#"}, {"type":"Keyword","value":"elif"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"false"}, {"type":"Text","value":"\n"}, {"type":"Operator","value":"#"}, {"type":"Name","value":"elseif"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"false"}, {"type":"Text","value":"\n"}, {"type":"CommentPreproc","value":"#endif"}, {"type":"Text","value":"\n"}, {"type":"CommentPreproc","value":"#light"}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"on\""}, {"type":"Text","value":"\n"}, {"type":"CommentPreproc","value":"#nowarn"}, {"type":"Text","value":"\n"}, {"type":"CommentPreproc","value":"#nowarn"}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"9\""}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"40\""}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"open"}, {"type":"Text","value":" "}, {"type":"NameNamespace","value":"System.Text"}, {"type":"CommentSingle","value":"// check that comments are handled correctly\n"}, {"type":"Keyword","value":"open"}, {"type":"Text","value":" "}, {"type":"NameNamespace","value":"System.Text"}, {"type":"Text","value":" "}, {"type":"CommentSingle","value":"// check that comments are handled correctly\n"}, {"type":"Keyword","value":"open"}, {"type":"Text","value":" "}, {"type":"NameNamespace","value":"System.Text.RegularExpressions"}, {"type":"Comment","value":"(* check that comments are handled correctly *)"}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"open"}, {"type":"Text","value":" "}, {"type":"NameNamespace","value":"System.Text.RegularExpressions"}, {"type":"Text","value":" "}, {"type":"Comment","value":"(* check that comments are handled correctly *)"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"module"}, {"type":"Text","value":" "}, {"type":"NameNamespace","value":"Test"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n\n "}, {"type":"Comment","value":"(** **Check** that this line isn't capture for the markdown grammar **)"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"a"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n "}, {"type":"Comment","value":"(**\n This is an edge case, because in early implementation this is commented the whilte file\n\n Line with indentation isn't colorized because markdown can't set up his context.\n *)"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"b"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n "}, {"type":"Comment","value":"(**\nThis block is colorized becasue markdown can set up his context.\n\n# First-level heading\nThis should be parsed as `markdown`.\nThis is an edge case, because in early implementation this is parser the whole\nfile as markdown\n *)"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"c"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n "}, {"type":"Comment","value":"(* Comments with nested (* (* *) *) works\n\n This line should be shown commented.\n class should not be colored\n *)"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"d"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n "}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Comment","value":"(* comment// *)"}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"not a comment\""}, {"type":"Text","value":"\n\n"}, {"type":"LiteralStringDoc","value":"/// **Description**\n///\n/// **Parameters**\n/// * `arg1` - parameter of type `string`\n/// * `arg2` - parameter of type `string`\n///\n/// **Output Type**\n/// * `string`\n///\n/// **Exceptions**\n///\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"markdownDemo"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"arg1"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"arg2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n"}, {"type":"LiteralStringDoc","value":"/// **Checking that markdown is really working on single line**\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"markdownDemo2"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"arg1"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"arg2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// **This comment isn't formatted**\n"}, {"type":"Text","value":"\n"}, {"type":"Comment","value":"(* Neither this one *)"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"exception"}, {"type":"Text","value":" "}, {"type":"Name","value":"UndefinedValueException"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"of"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"Alias"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"Alpha"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Keyword","value":"class"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"end"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"LightDU"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"|"}, {"type":"Text","value":" "}, {"type":"Name","value":"CaseA"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"|"}, {"type":"Text","value":" "}, {"type":"Name","value":"CaseB"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"EgalNewLine"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"CaseA"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"|"}, {"type":"Text","value":" "}, {"type":"Name","value":"CaseB"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"Underscore_Name"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Operator","value":"|"}, {"type":"Text","value":" "}, {"type":"Name","value":"Underscore_Name"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"of"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"i32"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"typeof"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"int"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"list"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"typedefof"}, {"type":"Operator","value":"\u003c_"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"Accentué"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"Class1"}, {"type":"NameBuiltinPseudo","value":"()"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Name","value":"this"}, {"type":"Punctuation","value":"."}, {"type":"NameFunction","value":"X"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"F#\""}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Check accessibility modifier coloring\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"R"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Keyword","value":"private"}, {"type":"Text","value":" "}, {"type":"Operator","value":"{"}, {"type":"Text","value":" "}, {"type":"Name","value":"X"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Operator","value":"}"}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"U"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Keyword","value":"private"}, {"type":"Text","value":" "}, {"type":"Operator","value":"|"}, {"type":"Text","value":" "}, {"type":"Name","value":"X"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"of"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"private"}, {"type":"Text","value":" "}, {"type":"Name","value":"getArgResults"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"private"}, {"type":"Text","value":" "}, {"type":"Name","value":"removeArgResults"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"private"}, {"type":"Text","value":" "}, {"type":"Name","value":"setArgResults"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Check builder detection (based on a whitelist)\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"a"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"promise"}, {"type":"Text","value":" "}, {"type":"Operator","value":"{"}, {"type":"Text","value":" "}, {"type":"Operator","value":"}"}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"b"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"pipeline"}, {"type":"Text","value":" "}, {"type":"Operator","value":"{"}, {"type":"Text","value":" "}, {"type":"Operator","value":"}"}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"c"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"noColor"}, {"type":"Text","value":" "}, {"type":"Operator","value":"{"}, {"type":"Text","value":" "}, {"type":"Operator","value":"}"}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Check that known builder names aren't captured as builders when a\n// value name begins with one of them (e.g. `asyncResult`)\n// Also see ionide/ionide-vscode-fsharp#836\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"d"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"asyncF"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"async"}, {"type":"Text","value":" "}, {"type":"Operator","value":"{"}, {"type":"Text","value":" "}, {"type":"Operator","value":"}"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"asyncF"}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Whitespace between builder and opening brace is optional\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"async"}, {"type":"Operator","value":"{"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"return"}, {"type":"Text","value":" "}, {"type":"Name","value":"0"}, {"type":"Text","value":" "}, {"type":"Operator","value":"}"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"FancyClass"}, {"type":"Operator","value":"("}, {"type":"Name","value":"thing"}, {"type":"Operator","value":":"}, {"type":"Name","value":"int"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"var2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"``ddzdz``"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"extra"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"as"}, {"type":"Text","value":" "}, {"type":"Name","value":"xxx"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n\n "}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"pf"}, {"type":"NameBuiltinPseudo","value":"()"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"xxx"}, {"type":"Operator","value":"."}, {"type":"Name","value":"Test"}, {"type":"NameBuiltinPseudo","value":"()"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"mutable"}, {"type":"Text","value":" "}, {"type":"Name","value":"myInternalValue"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Keyword","value":"null"}, {"type":"Text","value":"\n\n "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Name","value":"xxx"}, {"type":"Punctuation","value":"."}, {"type":"NameFunction","value":"Test"}, {"type":"NameBuiltinPseudo","value":"()"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"F#\""}, {"type":"Text","value":"\n\n "}, {"type":"CommentSingle","value":"// A read-only property.\n"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Name","value":"__"}, {"type":"Punctuation","value":"."}, {"type":"NameFunction","value":"MyReadOnlyProperty"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"myInternalValue"}, {"type":"Text","value":"\n "}, {"type":"CommentSingle","value":"// A write-only property.\n"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Name","value":"__"}, {"type":"Punctuation","value":"."}, {"type":"NameFunction","value":"MyWriteOnlyProperty"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"with"}, {"type":"Text","value":" "}, {"type":"Name","value":"set"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"value"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"myInternalValue"}, {"type":"Text","value":" "}, {"type":"Operator","value":"\u003c-"}, {"type":"Text","value":" "}, {"type":"Name","value":"value"}, {"type":"Text","value":"\n "}, {"type":"CommentSingle","value":"// A read-write property.\n"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Name","value":"__"}, {"type":"Punctuation","value":"."}, {"type":"NameFunction","value":"MyReadWriteProperty"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"with"}, {"type":"Text","value":" "}, {"type":"Name","value":"get"}, {"type":"Text","value":" "}, {"type":"NameBuiltinPseudo","value":"()"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"myInternalValue"}, {"type":"Text","value":"\n "}, {"type":"OperatorWord","value":"and"}, {"type":"Text","value":" "}, {"type":"Name","value":"set"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"value"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"myInternalValue"}, {"type":"Text","value":" "}, {"type":"Operator","value":"\u003c-"}, {"type":"Text","value":" "}, {"type":"Name","value":"value"}, {"type":"Text","value":"\n\n "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Name","value":"__"}, {"type":"Punctuation","value":"."}, {"type":"NameFunction","value":"ReadAndWriteWithSignature"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"with"}, {"type":"Text","value":" "}, {"type":"Name","value":"get"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"count"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Name","value":"count"}, {"type":"Text","value":"\n "}, {"type":"OperatorWord","value":"and"}, {"type":"Text","value":" "}, {"type":"Name","value":"set"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"value"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"unit"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"failwith"}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Name","value":"__"}, {"type":"Punctuation","value":"."}, {"type":"NameFunction","value":"MyReadWriteProperty"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"with"}, {"type":"Text","value":" "}, {"type":"Name","value":"get"}, {"type":"Text","value":" "}, {"type":"NameBuiltinPseudo","value":"()"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"myInternalValue"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Name","value":"__"}, {"type":"Punctuation","value":"."}, {"type":"NameFunction","value":"MyReadWriteProperty"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"with"}, {"type":"Text","value":" "}, {"type":"Name","value":"set"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"value"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"myInternalValue"}, {"type":"Text","value":" "}, {"type":"Operator","value":"\u003c-"}, {"type":"Text","value":" "}, {"type":"Name","value":"value"}, {"type":"Text","value":"\n\n "}, {"type":"Keyword","value":"abstract"}, {"type":"Text","value":" "}, {"type":"Name","value":"Update"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Name","value":"option"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"obj"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Name","value":"FancyClass"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"default"}, {"type":"Text","value":" "}, {"type":"Name","value":"this"}, {"type":"Operator","value":"."}, {"type":"Name","value":"Update"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"thing"}, {"type":"Operator","value":":"}, {"type":"Name","value":"int"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"var2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"``name withh spaces``"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Name","value":"option"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"extra"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"this"}, {"type":"Text","value":"\n\n "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"val"}, {"type":"Text","value":" "}, {"type":"Name","value":"Property1"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"thing"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"val"}, {"type":"Text","value":" "}, {"type":"Name","value":"Property2"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":" "}, {"type":"Keyword","value":"with"}, {"type":"Text","value":" "}, {"type":"Name","value":"get"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"set"}, {"type":"Text","value":"\n\n "}, {"type":"LiteralStringDoc","value":"/// The typo in withh is intentional, because with is one of the `end` possibility\n"}, {"type":"Text","value":" "}, {"type":"LiteralStringDoc","value":"/// We consider it ok, because there is a low chance that a person will use `with` in a quoted variable\n"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Name","value":"__"}, {"type":"Punctuation","value":"."}, {"type":"NameFunction","value":"Test2"}, {"type":"Operator","value":"("}, {"type":"Name","value":"thing"}, {"type":"Operator","value":":"}, {"type":"Name","value":"int"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"var2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"``name withh spaces``"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Name","value":"option"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"extra"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n "}, {"type":"Keyword","value":"static"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Operator","value":"(\u003e)"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"v1"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"v2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"v1"}, {"type":"Text","value":" "}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Name","value":"v2"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"static"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Operator","value":"(\u003c)"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"v1"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"v2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"v2"}, {"type":"Text","value":" "}, {"type":"Operator","value":"\u003c"}, {"type":"Text","value":" "}, {"type":"Name","value":"v2"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"static"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Operator","value":"(\u003c"}, {"type":"Text","value":" "}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"v1"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"v2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"v2"}, {"type":"Text","value":" "}, {"type":"Operator","value":"\u003c"}, {"type":"Text","value":" "}, {"type":"Name","value":"v2"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"static"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Operator","value":"(\u003c|\u003e)"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"v1"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"v2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"v2"}, {"type":"Text","value":" "}, {"type":"Operator","value":"\u003c"}, {"type":"Text","value":" "}, {"type":"Name","value":"v2"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"inline"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"internal"}, {"type":"Text","value":" "}, {"type":"Operator","value":"(\u003c)"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"x"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Name","value":"ys"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"x"}, {"type":"Text","value":" "}, {"type":"Operator","value":"+"}, {"type":"Text","value":" "}, {"type":"Name","value":"ys"}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"Operator","value":"(\u003c"}, {"type":"Text","value":" "}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"x"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Name","value":"ys"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"x"}, {"type":"Text","value":" "}, {"type":"Operator","value":"+"}, {"type":"Text","value":" "}, {"type":"Name","value":"ys"}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"Operator","value":"(\u003c\u003c.)"}, {"type":"Text","value":" "}, {"type":"Name","value":"a"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"1"}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"inline"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"internal"}, {"type":"Text","value":" "}, {"type":"Operator","value":"(\u003c==)"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"x"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Name","value":"ys"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"x"}, {"type":"Text","value":" "}, {"type":"Operator","value":"+"}, {"type":"Text","value":" "}, {"type":"Name","value":"ys"}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"inline"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"internal"}, {"type":"Text","value":" "}, {"type":"Operator","value":"(\u003c==)"}, {"type":"Text","value":" "}, {"type":"Name","value":"x"}, {"type":"Text","value":" "}, {"type":"Name","value":"ys"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"x"}, {"type":"Text","value":" "}, {"type":"Operator","value":"+"}, {"type":"Text","value":" "}, {"type":"Name","value":"ys"}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Check that this `get` and `set` methods are not messing the colourisation\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"get"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"ignore"}, {"type":"Text","value":"\n"}, {"type":"Name","value":"get"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"LiteralString","value":"\"maxime\""}, {"type":"Operator","value":")"}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"set"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"ignore"}, {"type":"Text","value":"\n"}, {"type":"Name","value":"set"}, {"type":"Operator","value":"("}, {"type":"LiteralString","value":"\"maxime\""}, {"type":"Operator","value":")"}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Arrow should be colored as a keyword and int as type definition\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"exec"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"buildOptions"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Name","value":"args"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// This line is to check that member_declaration isn't propagate output of declaration scopes\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"p"}, {"type":"Text","value":" "}, {"type":"Name","value":"value"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"NameNamespace","value":"System"}, {"type":"Punctuation","value":"."}, {"type":"NameNamespace","value":"Int32"}, {"type":"Punctuation","value":"."}, {"type":"Name","value":"Parse"}, {"type":"Operator","value":"("}, {"type":"Name","value":"value"}, {"type":"Operator","value":")"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"TestGeneric"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"arg"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"model"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"msg"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"view"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"private"}, {"type":"Text","value":" "}, {"type":"Comment","value":"(*comments test*)"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"a"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"arg"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"model"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"model"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"msg"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"msg"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"view"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"view"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"notify"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"unit"}, {"type":"Text","value":" "}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"as"}, {"type":"Text","value":" "}, {"type":"Name","value":"xxx"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"class"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"end"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"Name","value":"``Program with spaces``"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"arg"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"model"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"msg"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"view"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"class"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"end"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"Program"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"arg"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"model"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"msg"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"view"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"{"}, {"type":"Text","value":" "}, {"type":"Name","value":"Arg"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"arg"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"Model"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"model"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"Msg"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"msg"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"View"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"view"}, {"type":"Text","value":" "}, {"type":"Operator","value":"}"}, {"type":"Text","value":"\n\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"Decoder"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"a"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"class"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"end"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"keyValuePairs"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"decoder"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"Decoder"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"value"}, {"type":"Operator","value":"\u003e)"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"Decoder"}, {"type":"Operator","value":"\u003c("}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"value"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"failwith"}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"keyValuePairs"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"decoder"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"Decoder"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"value"}, {"type":"Operator","value":"\u003e)"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"Decoder"}, {"type":"Operator","value":"\u003c("}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"value"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"obj"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"failwith"}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"tuple2"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"decoder1"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"Decoder"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T1"}, {"type":"Operator","value":"\u003e)"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"decoder2"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"Decoder"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T2"}, {"type":"Operator","value":"\u003e)"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"Decoder"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T1"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T2"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"failwith"}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"run"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"program"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"Program"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"arg"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"model"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"msg"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"view"}, {"type":"Operator","value":"\u003e)"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"run2"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"program"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"unit"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Name","value":"Program"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"arg"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"model"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"msg"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"view"}, {"type":"Operator","value":"\u003e)"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"T"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"abstract"}, {"type":"Text","value":" "}, {"type":"Name","value":"Item"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"selector"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"with"}, {"type":"Text","value":" "}, {"type":"Name","value":"get"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"set"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"abstract"}, {"type":"Text","value":" "}, {"type":"Name","value":"icon"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"width"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Name","value":"height"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"with"}, {"type":"Text","value":" "}, {"type":"Name","value":"get"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"set"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"abstract"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Name","value":"Name"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Name","value":"option"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"with"}, {"type":"Text","value":" "}, {"type":"Name","value":"get"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"set"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"abstract"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Name","value":"NameTestComment"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Comment","value":"(*I am a comments*)"}, {"type":"Text","value":" "}, {"type":"Name","value":"option"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"with"}, {"type":"Text","value":" "}, {"type":"Name","value":"get"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"set"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"abstract"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Name","value":"NameTestComment2"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"CommentSingle","value":"//option with get, set\n"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"abstract"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Name","value":"Keys"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"unit"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Name","value":"Program"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"arg"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"model"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"msg"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"array"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"array"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"array"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"view"}, {"type":"Operator","value":"\u003e\u003e\u003e\u003e"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"abstract"}, {"type":"Text","value":" "}, {"type":"Name","value":"Run"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"program"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"Program"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"arg"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"model"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"msg"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"array"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"array"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"array"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"view"}, {"type":"Operator","value":"\u003e\u003e\u003e\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"unit"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"abstract"}, {"type":"Text","value":" "}, {"type":"Name","value":"``open``"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"cacheName"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"obj"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"abstract"}, {"type":"Text","value":" "}, {"type":"Name","value":"DrawElementsInstancedANGLE"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"mode"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"float"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Name","value":"count"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"float"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Name","value":"``type with spaces``"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"float"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Name","value":"offset"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"float"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Name","value":"primcount"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"float"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"abstract"}, {"type":"Text","value":" "}, {"type":"Name","value":"Test"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Name","value":"array"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"abstract"}, {"type":"Text","value":" "}, {"type":"Name","value":"Test2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"mode"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"float"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Name","value":"test"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":"\u003e,"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":"\u003e,"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Name","value":"array"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":")"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"abstract"}, {"type":"Text","value":" "}, {"type":"Name","value":"TupleOfTuples"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":"\u003e,"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":"\u003e,"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Name","value":"array"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":")))"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"FancyClass"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"with"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Name","value":"__"}, {"type":"Punctuation","value":"."}, {"type":"NameFunction","value":"Run"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"program"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"Program"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"arg"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"model"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"msg"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"array"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"view"}, {"type":"Operator","value":"\u003e\u003e)"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"NameBuiltinPseudo","value":"()"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"FancyClass1"}, {"type":"Operator","value":"(?"}, {"type":"Name","value":"thing"}, {"type":"Operator","value":":"}, {"type":"Name","value":"int"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"class"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"end"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"private"}, {"type":"Text","value":" "}, {"type":"Name","value":"FancyClass2"}, {"type":"Text","value":" "}, {"type":"Operator","value":"(?"}, {"type":"Name","value":"thing"}, {"type":"Operator","value":":"}, {"type":"Name","value":"int"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"class"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"end"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"FancyClass3"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"private"}, {"type":"Text","value":" "}, {"type":"Operator","value":"(?"}, {"type":"Name","value":"thing"}, {"type":"Operator","value":":"}, {"type":"Name","value":"int"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"class"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"end"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"foo"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"{"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"new"}, {"type":"Text","value":" "}, {"type":"NameNamespace","value":"System"}, {"type":"Punctuation","value":"."}, {"type":"Name","value":"IDisposable"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"with"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Name","value":"__"}, {"type":"Punctuation","value":"."}, {"type":"NameFunction","value":"Dispose"}, {"type":"NameBuiltinPseudo","value":"()"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Name","value":"failwith"}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"do nothing\""}, {"type":"Text","value":" "}, {"type":"Operator","value":"}"}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"bar"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"use"}, {"type":"Text","value":" "}, {"type":"Name","value":"foo"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Keyword","value":"new"}, {"type":"Text","value":" "}, {"type":"NameNamespace","value":"System"}, {"type":"Punctuation","value":"."}, {"type":"NameNamespace","value":"Threading"}, {"type":"Punctuation","value":"."}, {"type":"Name","value":"CancellationTokenSource"}, {"type":"NameBuiltinPseudo","value":"()"}, {"type":"Text","value":"\n "}, {"type":"NameBuiltinPseudo","value":"()"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"paramsColorWorksHereToo"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"client"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"obj"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"extraParam"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"name"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"unit"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"obj"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"endOfThisLineShouldBeCommented"}, {"type":"CommentSingle","value":"// (client : obj, extraParam) = \"\"\n"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Fixed width comments also works and coloration is still correct after it\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"endOfThisLineShouldBeCommented2"}, {"type":"Text","value":" "}, {"type":"Comment","value":"(*(client : obj, extraParam) = "}, {"type":"LiteralString","value":"\"\""}, {"type":"Comment","value":"*)"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"name"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Fixed width comments also works even in tuples parameters\n// and coloration is still correct after it\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"private"}, {"type":"Text","value":" "}, {"type":"Operator","value":"_"}, {"type":"Name","value":"emitLetBinding"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"il"}, {"type":"Operator","value":":"}, {"type":"Name","value":"int"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Comment","value":"(*methods:MethodSymbolTable, locals:LocalsSymbolTable,*)"}, {"type":"Text","value":" "}, {"type":"Name","value":"binding"}, {"type":"Operator","value":":"}, {"type":"KeywordType","value":"obj"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"EndOfThisLineShouldBe"}, {"type":"Text","value":" "}, {"type":"CommentSingle","value":"//Commented (a:int, b:int)\n"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"a"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"b"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"class"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"end"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"name"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"age"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"0"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"NameRecord"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"{"}, {"type":"Text","value":" "}, {"type":"Name","value":"Firstname"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"Surname"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Operator","value":"}"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"NestedRecord"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"{"}, {"type":"Text","value":" "}, {"type":"Name","value":"Nested"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"NestedRecord"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"PropB"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Operator","value":"}"}, {"type":"Text","value":"\n\n\n"}, {"type":"CommentSingle","value":"// Test signature coloration\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"primitive"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"0"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"tupleOfPrimitives"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"0"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"NameBuiltinPseudo","value":"[]"}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"tupleOfPrimitives"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"0"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"tupleOfTuples"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":")))"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"failwith"}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"tupleOfTuples"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":"\u003e,"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":"\u003e,"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Name","value":"array"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":"))"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"failwith"}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"tupleOfTuples"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":"\u003e,"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":"\u003e,"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Name","value":"array"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":")))"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"failwith"}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"listOfTuples"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"("}, {"type":"Name","value":"files"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Operator","value":")"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"("}, {"type":"Name","value":"files2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Operator","value":")"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Name","value":"array"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":")))"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"NameBuiltinPseudo","value":"[]"}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"generics"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Name","value":"array"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"Ok"}, {"type":"Text","value":" "}, {"type":"NameBuiltinPseudo","value":"[]"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"tupleWithGenerics"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Name","value":"array"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"Ok"}, {"type":"Text","value":" "}, {"type":"NameBuiltinPseudo","value":"[]"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"0"}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"tupleWithAListOfGenerics"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"p1"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Name","value":"Map"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"int"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"p2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Name","value":"Map"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"int"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Name","value":"Map"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"int"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"1"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"NameBuiltinPseudo","value":"[]"}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"tupleWithAListOfGenerics"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Name","value":"Map"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"int"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"1"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"NameBuiltinPseudo","value":"[]"}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"tupleWithAListOrArrayOfGenerics2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Name","value":"Map"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"int"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Name","value":"Map"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"int"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Name","value":"array"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"1"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"NameBuiltinPseudo","value":"[]"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Operator","value":"[||]"}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Really complexe nested generic type\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"tupleWithGenerics2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":"\u003e,"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":"\u003e,"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Name","value":"array"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"Ok"}, {"type":"Text","value":" "}, {"type":"NameBuiltinPseudo","value":"[]"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"0"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"lambda"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"unit"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"ignore"}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"lambda"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"unit"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"ignore"}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"lambda"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"unit"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"unit"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"ignore"}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"lambda"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Name","value":"array"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":"))"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"unit"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"ignore"}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"lambda"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":"\u003e,"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":"\u003e,"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Name","value":"array"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Name","value":"array"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"unit"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"ignore"}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"lambda"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Text","value":" "}, {"type":"Name","value":"x"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":"\u003e,"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":"\u003e,"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Name","value":"array"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":"\u003e,"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":"\u003e,"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Name","value":"array"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":")"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"unit"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"unit"}, {"type":"Text","value":" "}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"ignore"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"inline"}, {"type":"Text","value":" "}, {"type":"Name","value":"isLoadingTime"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"a"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"inline"}, {"type":"Text","value":" "}, {"type":"Name","value":"isLoadingTime"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"a"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"b"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"c"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"inline"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"method"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"a"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Name","value":"prefix"}, {"type":"Text","value":" "}, {"type":"Name","value":"chunck"}, {"type":"Text","value":" "}, {"type":"Name","value":"dzd"}, {"type":"Text","value":" "}, {"type":"Name","value":"zd"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"promise"}, {"type":"Text","value":" "}, {"type":"Operator","value":"{"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"let!"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"dzdz"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"}"}, {"type":"Text","value":"\n\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"v"}, {"type":"Text","value":" "}, {"type":"Name","value":"``var with spaces``"}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"printFullName"}, {"type":"Text","value":" "}, {"type":"Operator","value":"{"}, {"type":"Text","value":" "}, {"type":"Name","value":"Firstname"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"firstname"}, {"type":"Operator","value":";"}, {"type":"Text","value":" "}, {"type":"Name","value":"Surname"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"surname"}, {"type":"Text","value":" "}, {"type":"Operator","value":"}"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"firstname"}, {"type":"Text","value":" "}, {"type":"Operator","value":"+"}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\" \""}, {"type":"Text","value":" "}, {"type":"Operator","value":"+"}, {"type":"Text","value":" "}, {"type":"Name","value":"surname"}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"printFirstName"}, {"type":"Text","value":" "}, {"type":"Operator","value":"{"}, {"type":"Text","value":" "}, {"type":"Name","value":"Firstname"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"firstname"}, {"type":"Text","value":" "}, {"type":"Operator","value":"}"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"firstname"}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"printFirstName"}, {"type":"Text","value":" "}, {"type":"Operator","value":"({"}, {"type":"Text","value":" "}, {"type":"Name","value":"Firstname"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"``var with spaces``"}, {"type":"Text","value":" "}, {"type":"Operator","value":"}"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"NameRecord"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Text","value":" "}, {"type":"Operator","value":"_"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"obj"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"``var with spaces``"}, {"type":"Text","value":"\n\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"Name","value":"``test multiple backticks``"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"row"}, {"type":"Operator","value":"."}, {"type":"Name","value":"``maxime``"}, {"type":"Operator","value":"."}, {"type":"Name","value":"Trim"}, {"type":"NameBuiltinPseudo","value":"()"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"row"}, {"type":"Operator","value":"."}, {"type":"Name","value":"``Last Update``"}, {"type":"Text","value":" "}, {"type":"CommentSingle","value":"// Test multiple backticks on the same line\n"}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"nestedRecords"}, {"type":"Text","value":" "}, {"type":"Operator","value":"({"}, {"type":"Text","value":" "}, {"type":"Name","value":"Nested"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Operator","value":"{"}, {"type":"Text","value":" "}, {"type":"Name","value":"Nested"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Operator","value":"{"}, {"type":"Text","value":" "}, {"type":"Name","value":"Nested"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Operator","value":"{"}, {"type":"Text","value":" "}, {"type":"Name","value":"Nested"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"value"}, {"type":"Text","value":" "}, {"type":"Operator","value":"};"}, {"type":"Text","value":" "}, {"type":"Name","value":"PropB"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Operator","value":"_"}, {"type":"Text","value":" "}, {"type":"Operator","value":"}"}, {"type":"Text","value":" "}, {"type":"Operator","value":"};"}, {"type":"Text","value":" "}, {"type":"Name","value":"PropB"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"propB"}, {"type":"Text","value":" "}, {"type":"Operator","value":"}"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"NestedRecord"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"value"}, {"type":"Operator","value":"."}, {"type":"Name","value":"PropB"}, {"type":"Text","value":" "}, {"type":"Operator","value":"+"}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\" \""}, {"type":"Text","value":" "}, {"type":"Operator","value":"+"}, {"type":"Text","value":" "}, {"type":"Name","value":"propB"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"variable"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"value\""}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Check that style is apply even when declaration is on multiple lines\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"func"}, {"type":"Text","value":" "}, {"type":"Name","value":"arg1"}, {"type":"Text","value":" "}, {"type":"Name","value":"arg2"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"func"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"arg1"}, {"type":"Text","value":" "}, {"type":"Name","value":"arg2"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"func"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"arg1"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"arg2"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Check that option is also colored as part of the type definition\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"debounce"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"debounce"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Name","value":"option"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Check output type coloration\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"mutable"}, {"type":"Text","value":" "}, {"type":"Name","value":"timeoutID"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"float"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"0"}, {"type":"Operator","value":"."}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"test2"}, {"type":"Text","value":" "}, {"type":"Name","value":"test"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"timeoutID"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"float"}, {"type":"Text","value":" "}, {"type":"Name","value":"option"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Name","value":"option"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"None"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"module"}, {"type":"Text","value":" "}, {"type":"NameNamespace","value":"test"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"t"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"1"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"module"}, {"type":"Text","value":" "}, {"type":"NameNamespace","value":"accentué"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"t"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"1"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"open"}, {"type":"Text","value":" "}, {"type":"NameNamespace","value":"test"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"MutableMembersTest"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Operator","value":"{"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"mutable"}, {"type":"Text","value":" "}, {"type":"Name","value":"test"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":"\n"}, {"type":"Operator","value":"}"}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Test that variable named like: keyword' isn't colored in a match statement\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"test"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"match'"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"match"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"match'"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"with"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"|"}, {"type":"Text","value":" "}, {"type":"Name","value":"CaseA"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"|"}, {"type":"Text","value":" "}, {"type":"Name","value":"CaseB"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"test2"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"return'"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"match"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"return'"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"with"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"|"}, {"type":"Text","value":" "}, {"type":"Name","value":"CaseA"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"|"}, {"type":"Text","value":" "}, {"type":"Name","value":"CaseB"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"RequestData"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"{"}, {"type":"Text","value":" "}, {"type":"Name","value":"Params"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Operator","value":"}"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"Client"}, {"type":"Text","value":" "}, {"type":"NameBuiltinPseudo","value":"()"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Name","value":"this"}, {"type":"Punctuation","value":"."}, {"type":"NameFunction","value":"Request"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"req"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"RequestData"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"res"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"client"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"Client"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"extraParam"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"client"}, {"type":"Operator","value":"."}, {"type":"Name","value":"Request"}, {"type":"Text","value":" "}, {"type":"Operator","value":"{"}, {"type":"Text","value":" "}, {"type":"Name","value":"Params"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":" "}, {"type":"Operator","value":"}"}, {"type":"Text","value":"\n\n"}, {"type":"Operator","value":"[\u003c"}, {"type":"Name","value":"Measure"}, {"type":"Operator","value":"\u003e]"}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"kg"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"forLoop"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"["}, {"type":"Text","value":" "}, {"type":"Keyword","value":"for"}, {"type":"Text","value":" "}, {"type":"Name","value":"index"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"0"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"to"}, {"type":"Text","value":" "}, {"type":"Name","value":"1"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"do"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"yield"}, {"type":"Text","value":" "}, {"type":"Name","value":"index"}, {"type":"Text","value":" "}, {"type":"Operator","value":"]"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"GenType"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"a"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"a"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"Name","value":"``type with spaces``"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"obj"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"t"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"``type with spaces``"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Keyword","value":"null"}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"t2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"obj"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Keyword","value":"null"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"TestDUTypeColoration"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"|"}, {"type":"Text","value":" "}, {"type":"Name","value":"CaseA"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"|"}, {"type":"Text","value":" "}, {"type":"Name","value":"CaseB"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"of"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"|"}, {"type":"Text","value":" "}, {"type":"Name","value":"CaseC"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"of"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Operator","value":")"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"|"}, {"type":"Text","value":" "}, {"type":"Name","value":"CaseD"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"of"}, {"type":"Text","value":" "}, {"type":"Name","value":"name"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Name","value":"age"}, {"type":"Operator","value":":"}, {"type":"Name","value":"int"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"|"}, {"type":"Text","value":" "}, {"type":"Name","value":"CaseE"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"of"}, {"type":"Text","value":" "}, {"type":"Name","value":"client"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"Client"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"|"}, {"type":"Text","value":" "}, {"type":"Name","value":"CaseF"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"of"}, {"type":"Text","value":" "}, {"type":"Name","value":"client"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"Client"}, {"type":"Text","value":" "}, {"type":"Comment","value":"(*comment tests*)"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Comment","value":"(*comment tests*)"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Name","value":"port"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"|"}, {"type":"Text","value":" "}, {"type":"Name","value":"CaseG"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"of"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"KeywordType","value":"obj"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"unit"}, {"type":"Operator","value":")"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"|"}, {"type":"Text","value":" "}, {"type":"Name","value":"CaseH"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"of"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"KeywordType","value":"obj"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"unit"}, {"type":"Operator","value":")"}, {"type":"Text","value":"\n "}, {"type":"CommentSingle","value":"// Check multiple declaration on one line\n"}, {"type":"Text","value":" "}, {"type":"Operator","value":"|"}, {"type":"Text","value":" "}, {"type":"Name","value":"CaseI"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"of"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Operator","value":"|"}, {"type":"Text","value":" "}, {"type":"Name","value":"CaseJ"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"of"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"|"}, {"type":"Text","value":" "}, {"type":"Name","value":"CaseF2"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"of"}, {"type":"Text","value":" "}, {"type":"Name","value":"client"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"Client"}, {"type":"Text","value":" "}, {"type":"CommentSingle","value":"// * string * port : int\n"}, {"type":"Text","value":" "}, {"type":"Operator","value":"|"}, {"type":"Text","value":" "}, {"type":"Name","value":"FetchDomainsSuccess"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"of"}, {"type":"Text","value":" "}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Name","value":"``type with spaces``"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"``type with spaces``"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"|"}, {"type":"Text","value":" "}, {"type":"Name","value":"CaseK"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"of"}, {"type":"Text","value":" "}, {"type":"Name","value":"``var with spaces``"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"|"}, {"type":"Text","value":" "}, {"type":"Name","value":"CaseL"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"of"}, {"type":"Text","value":" "}, {"type":"Name","value":"``var with spaces``"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"``type with spaces``"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"|"}, {"type":"Text","value":" "}, {"type":"Name","value":"CaseM"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"of"}, {"type":"Text","value":" "}, {"type":"Name","value":"v1"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"``type with spaces``"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"|"}, {"type":"Text","value":" "}, {"type":"Name","value":"CaseN"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"of"}, {"type":"Text","value":" "}, {"type":"Name","value":"``type with spaces``"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"TestRecordColoration"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"a"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"{"}, {"type":"Text","value":" "}, {"type":"Name","value":"Firstname"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"Lastname"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":"\n "}, {"type":"LiteralStringDoc","value":"/// Test docs comments works with `markdown`\n"}, {"type":"Text","value":" "}, {"type":"Name","value":"Age"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Comment","value":"(*comment tests*)"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"Notify"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"unit"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"Notify2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"KeywordType","value":"unit"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"Notify3"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"unit"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"Notify4"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"unit"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"Callback"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Name","value":"GenType"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"a"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Name","value":"Client"}, {"type":"Text","value":" "}, {"type":"CommentSingle","value":"// Comments tests\n"}, {"type":"Text","value":" "}, {"type":"Name","value":"TypeWithSpace"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"``type with spaces``"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"Nested"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"(("}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Comment","value":"(*comment tests*)"}, {"type":"Text","value":" "}, {"type":"Name","value":"RequestData"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Name","value":"Client"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"mutable"}, {"type":"Text","value":" "}, {"type":"Name","value":"Mutable"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"obj"}, {"type":"Text","value":" "}, {"type":"Operator","value":"}"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"testRecordColoration"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"{"}, {"type":"Text","value":" "}, {"type":"Name","value":"Firstname"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"string\""}, {"type":"Text","value":" "}, {"type":"CommentSingle","value":"// Comments should work here\n"}, {"type":"Text","value":" "}, {"type":"Name","value":"Lastname"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"string\""}, {"type":"Text","value":"\n "}, {"type":"Name","value":"Age"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"10"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"Notify"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Keyword","value":"fun"}, {"type":"Text","value":" "}, {"type":"Operator","value":"_"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"NameBuiltinPseudo","value":"()"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"Notify2"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Keyword","value":"fun"}, {"type":"Text","value":" "}, {"type":"Name","value":"s"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"NameBuiltinPseudo","value":"()"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"Notify3"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Keyword","value":"fun"}, {"type":"Text","value":" "}, {"type":"Operator","value":"_"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"NameBuiltinPseudo","value":"()"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"Notify4"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Keyword","value":"fun"}, {"type":"Text","value":" "}, {"type":"Operator","value":"_"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"NameBuiltinPseudo","value":"()"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"Callback"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Keyword","value":"fun"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"a"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Comment","value":"(*b) comments should works here too*)"}, {"type":"Text","value":" "}, {"type":"Name","value":"b"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Name","value":"unbox"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"null"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"TypeWithSpace"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Keyword","value":"null"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"Nested"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Keyword","value":"fun"}, {"type":"Text","value":" "}, {"type":"Name","value":"func"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Name","value":"unbox"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"null"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"Mutable"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Keyword","value":"null"}, {"type":"Text","value":" "}, {"type":"Operator","value":"}"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"CheckSingleLineRecord"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"{"}, {"type":"Text","value":" "}, {"type":"Name","value":"Param1"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":";"}, {"type":"Text","value":" "}, {"type":"Comment","value":"(*comment tests*)"}, {"type":"Text","value":" "}, {"type":"Name","value":"Param2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"obj"}, {"type":"Text","value":" "}, {"type":"Operator","value":"}"}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Check that compression expression aren't mess up by the record coloration\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"a"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Name","value":"async"}, {"type":"Text","value":" "}, {"type":"Operator","value":"{"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"let!"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"a"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"async"}, {"type":"Text","value":" "}, {"type":"Operator","value":"{"}, {"type":"Text","value":"\n "}, {"type":"Comment","value":"(*comment tests*)"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"return"}, {"type":"Text","value":" "}, {"type":"Name","value":"0"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"}"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"return"}, {"type":"Text","value":" "}, {"type":"Name","value":"a"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"}"}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Test case for: https://github.com/ionide/ionide-fsgrammar/issues/147\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"testVariableWithModuleKeyword"}, {"type":"Text","value":" "}, {"type":"Name","value":"test_module"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"if"}, {"type":"Text","value":" "}, {"type":"Name","value":"test_module"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"then"}, {"type":"Text","value":" "}, {"type":"CommentSingle","value":"// This is the line where the problem is\n"}, {"type":"Text","value":" "}, {"type":"NameBuiltinPseudo","value":"()"}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Edge cases provided by @selketjah\n// In this code some of the `type` word where colored in purple\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"Example"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"{"}, {"type":"Text","value":" "}, {"type":"Name","value":"Type"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"SType"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"Stype"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"STypeT"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"StypeT"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"CommentSingle","value":"// comments tests\n"}, {"type":"Text","value":" "}, {"type":"Name","value":"TypeS"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Comment","value":"(*comment tests*)"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"typeTest"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"stype"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"stypes"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"s_type"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Operator","value":"}"}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Edge cases provided by @selketjah\n// `type` was colored as keyword\n// `with` as a Type declaration\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"temp"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"s"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"Example"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"match"}, {"type":"Text","value":" "}, {"type":"Name","value":"s"}, {"type":"Operator","value":"."}, {"type":"Name","value":"stype"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"with"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"|"}, {"type":"Text","value":" "}, {"type":"Name","value":"0"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"whatever\""}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"|"}, {"type":"Text","value":" "}, {"type":"Name","value":"1"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Edge case when there is something after } the next type is not colored\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"One"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"{"}, {"type":"Text","value":" "}, {"type":"Name","value":"Id"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Operator","value":"}"}, {"type":"Text","value":" "}, {"type":"CommentSingle","value":"// test\n"}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"Two"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"{"}, {"type":"Text","value":" "}, {"type":"Name","value":"Id"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"Operator","value":"}"}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Support for anonymous records\n"}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"Employee"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"|"}, {"type":"Text","value":" "}, {"type":"Name","value":"Engineer"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"of"}, {"type":"Text","value":" "}, {"type":"Operator","value":"{|"}, {"type":"Text","value":" "}, {"type":"Name","value":"Prop1"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":";"}, {"type":"Text","value":" "}, {"type":"Name","value":"Prop2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"{|"}, {"type":"Text","value":" "}, {"type":"Name","value":"Prop1"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":";"}, {"type":"Text","value":" "}, {"type":"Name","value":"Prop2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"{|"}, {"type":"Text","value":" "}, {"type":"Name","value":"Prop1"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"GenType"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"GenType"}, {"type":"Operator","value":"\u003c"}, {"type":"KeywordType","value":"obj"}, {"type":"Operator","value":"\u003e\u003e;"}, {"type":"Text","value":" "}, {"type":"Name","value":"Prop2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"{|"}, {"type":"Text","value":" "}, {"type":"Name","value":"Prop1"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":";"}, {"type":"Text","value":" "}, {"type":"Name","value":"Prop2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"List"}, {"type":"Operator","value":"\u003c"}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"|}"}, {"type":"Text","value":" "}, {"type":"Operator","value":"|}"}, {"type":"Text","value":" "}, {"type":"Operator","value":"|}"}, {"type":"Text","value":" "}, {"type":"Operator","value":"|}"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"|"}, {"type":"Text","value":" "}, {"type":"Name","value":"Manager"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"of"}, {"type":"Text","value":" "}, {"type":"Operator","value":"{|"}, {"type":"Text","value":" "}, {"type":"Name","value":"Prop1"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":";"}, {"type":"Text","value":" "}, {"type":"Name","value":"Prop2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"{|"}, {"type":"Text","value":" "}, {"type":"Name","value":"Prop1"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":";"}, {"type":"Text","value":" "}, {"type":"Name","value":"Prop2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"List"}, {"type":"Operator","value":"\u003c"}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"|}"}, {"type":"Text","value":" "}, {"type":"Operator","value":"|}"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"private"}, {"type":"Text","value":" "}, {"type":"Name","value":"standardIntInput"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"props"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"{|"}, {"type":"Text","value":" "}, {"type":"Name","value":"Dispatch"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"GenType"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"GenType"}, {"type":"Operator","value":"\u003c"}, {"type":"KeywordType","value":"obj"}, {"type":"Operator","value":"\u003e\u003e"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"Disabled"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"{|"}, {"type":"Text","value":" "}, {"type":"Name","value":"Prop1"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":";"}, {"type":"Text","value":" "}, {"type":"Name","value":"Prop2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"{|"}, {"type":"Text","value":" "}, {"type":"Name","value":"Prop1"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":";"}, {"type":"Text","value":" "}, {"type":"Name","value":"Prop2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"List"}, {"type":"Operator","value":"\u003c"}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"|}"}, {"type":"Text","value":" "}, {"type":"Operator","value":"|}"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"Errors"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"GenType"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"Msg"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Text","value":" "}, {"type":"Operator","value":"|})"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"test"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Keyword","value":"fun"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"props"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"{|"}, {"type":"Text","value":" "}, {"type":"Name","value":"Dispatch"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"GenType"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"GenType"}, {"type":"Operator","value":"\u003c"}, {"type":"KeywordType","value":"obj"}, {"type":"Operator","value":"\u003e\u003e"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"Disabled"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"{|"}, {"type":"Text","value":" "}, {"type":"Name","value":"Prop1"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":";"}, {"type":"Text","value":" "}, {"type":"Name","value":"Prop2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"{|"}, {"type":"Text","value":" "}, {"type":"Name","value":"Prop1"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":";"}, {"type":"Text","value":" "}, {"type":"Name","value":"Prop2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"List"}, {"type":"Operator","value":"\u003c"}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"|}"}, {"type":"Text","value":" "}, {"type":"Operator","value":"|}"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"Errors"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"GenType"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"Msg"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Text","value":" "}, {"type":"Operator","value":"|})"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"AR_Class"}, {"type":"Text","value":" "}, {"type":"NameBuiltinPseudo","value":"()"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Name","value":"this"}, {"type":"Punctuation","value":"."}, {"type":"NameFunction","value":"Method1"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"props"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"{|"}, {"type":"Text","value":" "}, {"type":"Name","value":"Dispatch"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"GenType"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"GenType"}, {"type":"Operator","value":"\u003c"}, {"type":"KeywordType","value":"obj"}, {"type":"Operator","value":"\u003e\u003e"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"Disabled"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"{|"}, {"type":"Text","value":" "}, {"type":"Name","value":"Prop1"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":";"}, {"type":"Text","value":" "}, {"type":"Name","value":"Prop2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"{|"}, {"type":"Text","value":" "}, {"type":"Name","value":"Prop1"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":";"}, {"type":"Text","value":" "}, {"type":"Name","value":"Prop2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"List"}, {"type":"Operator","value":"\u003c"}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"|}"}, {"type":"Text","value":" "}, {"type":"Operator","value":"|}"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"Errors"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"GenType"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"Msg"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Text","value":" "}, {"type":"Operator","value":"|})"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Check anonymous function type signature\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"tx"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Keyword","value":"fun"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"t"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"``type with spaces``"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"``var with spaces``"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"KeywordType","value":"obj"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":"\u003e)"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"NameBuiltinPseudo","value":"()"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"private"}, {"type":"Text","value":" "}, {"type":"Name","value":"mixedArray"}, {"type":"Text","value":" "}, {"type":"Name","value":"msg"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"decoders"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"NameBuiltinPseudo","value":"[]"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"path"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"values"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"obj"}, {"type":"NameBuiltinPseudo","value":"[]"}, {"type":"Operator","value":"):"}, {"type":"Text","value":" "}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"KeywordType","value":"obj"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Name","value":"Ok"}, {"type":"Text","value":" "}, {"type":"NameBuiltinPseudo","value":"[]"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"Auto"}, {"type":"NameBuiltinPseudo","value":"()"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"static"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"color"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"message"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"failwith"}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n "}, {"type":"Keyword","value":"static"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"color"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"Result"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":"\u003e)"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"failwith"}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n "}, {"type":"CommentSingle","value":"// Here `\u003c`\u0026 `\u003e` not in purple\n"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"static"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Name","value":"GenerateDecoder"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"(?"}, {"type":"Name","value":"isCamelCase"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"bool"}, {"type":"Operator","value":"):"}, {"type":"Text","value":" "}, {"type":"Name","value":"GenType"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"failwith"}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n "}, {"type":"CommentSingle","value":"// Here generics not colored\n"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"static"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Name","value":"FromString"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Operator","value":"\u003e("}, {"type":"Name","value":"json"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Operator","value":"?"}, {"type":"Name","value":"isCamelCase"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"bool"}, {"type":"Operator","value":"):"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"failwith"}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"Example1"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Operator","value":"{"}, {"type":"Text","value":" "}, {"type":"Name","value":"Test"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Text","value":" "}, {"type":"Operator","value":"}"}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"test"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Operator","value":"{"}, {"type":"Text","value":" "}, {"type":"Name","value":"Test"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Operator","value":"["}, {"type":"Text","value":" "}, {"type":"Name","value":"1"}, {"type":"Operator","value":";"}, {"type":"Name","value":"2"}, {"type":"Operator","value":";"}, {"type":"Name","value":"3"}, {"type":"Text","value":" "}, {"type":"Operator","value":"]"}, {"type":"Text","value":" "}, {"type":"Operator","value":"}"}, {"type":"Text","value":"\n"}, {"type":"CommentSingle","value":"// test.test shouldn't be colored\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"temp"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Operator","value":"{"}, {"type":"Text","value":" "}, {"type":"Name","value":"test"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"with"}, {"type":"Text","value":" "}, {"type":"Name","value":"Test"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"3"}, {"type":"Text","value":" "}, {"type":"Operator","value":"::"}, {"type":"Text","value":" "}, {"type":"Name","value":"test"}, {"type":"Operator","value":"."}, {"type":"Name","value":"Test"}, {"type":"Text","value":" "}, {"type":"Operator","value":"}"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"EitherBuilder"}, {"type":"NameBuiltinPseudo","value":"()"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Name","value":"__"}, {"type":"Punctuation","value":"."}, {"type":"NameFunction","value":"Bind"}, {"type":"Operator","value":"("}, {"type":"Name","value":"x"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"x"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Name","value":"__"}, {"type":"Punctuation","value":"."}, {"type":"NameFunction","value":"Return"}, {"type":"Operator","value":"("}, {"type":"Name","value":"x"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"x"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"either"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"EitherBuilder"}, {"type":"NameBuiltinPseudo","value":"()"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"test"}, {"type":"Text","value":" "}, {"type":"Name","value":"x"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"CommentSingle","value":"// Ensure coloration is working correctly in custom computation expressions\n"}, {"type":"Text","value":" "}, {"type":"Name","value":"either"}, {"type":"Text","value":" "}, {"type":"Operator","value":"{"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"x"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"x"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"let!"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"c"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n "}, {"type":"Keyword","value":"return"}, {"type":"Text","value":" "}, {"type":"Name","value":"0"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"}"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"open"}, {"type":"Text","value":" "}, {"type":"NameNamespace","value":"System"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"QueueTrigger"}, {"type":"Operator","value":"("}, {"type":"Name","value":"msg"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"b"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"bool"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"inherit"}, {"type":"Text","value":" "}, {"type":"Name","value":"Attribute"}, {"type":"NameBuiltinPseudo","value":"()"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"Operator","value":"[\u003c"}, {"type":"Name","value":"AllowNullLiteral"}, {"type":"Operator","value":"\u003e]"}, {"type":"Text","value":" "}, {"type":"Name","value":"AppState2"}, {"type":"NameBuiltinPseudo","value":"()"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"class"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"end"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"Operator","value":"[\u003c"}, {"type":"Name","value":"AllowNullLiteral"}, {"type":"Operator","value":"\u003e]"}, {"type":"Text","value":" "}, {"type":"Name","value":"AppState"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"a"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"b"}, {"type":"Operator","value":"\u003e"}, {"type":"NameBuiltinPseudo","value":"()"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"class"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"end"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"run"}, {"type":"Text","value":" "}, {"type":"Operator","value":"([\u003c"}, {"type":"Name","value":"QueueTrigger"}, {"type":"Operator","value":"("}, {"type":"LiteralString","value":"\"something\""}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"false"}, {"type":"Operator","value":");"}, {"type":"Text","value":" "}, {"type":"Name","value":"QueueTrigger"}, {"type":"Operator","value":"("}, {"type":"LiteralString","value":"\"something\""}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"false"}, {"type":"Operator","value":")\u003e]"}, {"type":"Text","value":" "}, {"type":"Name","value":"content"}, {"type":"Operator","value":":"}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"failwith"}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"Operator","value":"[\u003c"}, {"type":"Name","value":"QueueTrigger"}, {"type":"Operator","value":"("}, {"type":"LiteralString","value":"\"something\""}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"false"}, {"type":"Operator","value":")\u003e]"}, {"type":"Text","value":" "}, {"type":"Name","value":"TestInlineAttributeGenerics"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"a"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"b"}, {"type":"Operator","value":"\u003e("}, {"type":"Name","value":"content"}, {"type":"Operator","value":":"}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"class"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"end"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"Operator","value":"[\u003c"}, {"type":"Name","value":"QueueTrigger"}, {"type":"Operator","value":"("}, {"type":"LiteralString","value":"\"something\""}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"false"}, {"type":"Operator","value":")\u003e]"}, {"type":"Text","value":" "}, {"type":"Name","value":"TestInlineAttribute"}, {"type":"Operator","value":"("}, {"type":"Name","value":"content"}, {"type":"Operator","value":":"}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"class"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"end"}, {"type":"Text","value":"\n\n"}, {"type":"Operator","value":"[\u003c"}, {"type":"Name","value":"QueueTrigger"}, {"type":"Operator","value":"("}, {"type":"LiteralString","value":"\"something\""}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"false"}, {"type":"Operator","value":");"}, {"type":"Text","value":" "}, {"type":"Name","value":"QueueTrigger"}, {"type":"Operator","value":"("}, {"type":"LiteralString","value":"\"something\""}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"false"}, {"type":"Operator","value":")\u003e]"}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"TestAttribue2"}, {"type":"Operator","value":"("}, {"type":"Name","value":"content"}, {"type":"Operator","value":":"}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"class"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"end"}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// // Make sure coloration support SRTP synthax\n// // The next code has been copied from\n// // https://docs.microsoft.com/en-us/dotnet/fsharp/language-reference/generics/statically-resolved-type-parameters\n"}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"inline"}, {"type":"Text","value":" "}, {"type":"Name","value":"konst"}, {"type":"Text","value":" "}, {"type":"Name","value":"x"}, {"type":"Text","value":" "}, {"type":"Operator","value":"_"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"x"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"CFunctor"}, {"type":"NameBuiltinPseudo","value":"()"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"static"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"inline"}, {"type":"Text","value":" "}, {"type":"Name","value":"fmap"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"f"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"a"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"b"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"a"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"a"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"NameNamespace","value":"List"}, {"type":"Punctuation","value":"."}, {"type":"Name","value":"map"}, {"type":"Text","value":" "}, {"type":"Name","value":"f"}, {"type":"Text","value":" "}, {"type":"Name","value":"a"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"static"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"inline"}, {"type":"Text","value":" "}, {"type":"Name","value":"fmap"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"f"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"a"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"b"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"a"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"a"}, {"type":"Text","value":" "}, {"type":"Name","value":"option"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"match"}, {"type":"Text","value":" "}, {"type":"Name","value":"a"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"with"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"|"}, {"type":"Text","value":" "}, {"type":"Name","value":"None"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Name","value":"None"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"|"}, {"type":"Text","value":" "}, {"type":"Name","value":"Some"}, {"type":"Text","value":" "}, {"type":"Name","value":"x"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Name","value":"Some"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"f"}, {"type":"Text","value":" "}, {"type":"Name","value":"x"}, {"type":"Operator","value":")"}, {"type":"Text","value":"\n\n "}, {"type":"CommentSingle","value":"// default implementation of replace\n"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"static"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"inline"}, {"type":"Text","value":" "}, {"type":"Name","value":"replace"}, {"type":"Operator","value":"\u003c"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"a"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"b"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"c"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"d"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"e"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"when"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"a"}, {"type":"Text","value":" "}, {"type":"Operator","value":":\u003e"}, {"type":"Text","value":" "}, {"type":"Name","value":"CFunctor"}, {"type":"Text","value":" "}, {"type":"OperatorWord","value":"and"}, {"type":"Text","value":" "}, {"type":"Operator","value":"(^"}, {"type":"Name","value":"a"}, {"type":"Text","value":" "}, {"type":"OperatorWord","value":"or"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"d"}, {"type":"Operator","value":"):"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Keyword","value":"static"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Name","value":"fmap"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"(^"}, {"type":"Name","value":"b"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"c"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"d"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"e"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"a"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"f"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"((^"}, {"type":"Name","value":"a"}, {"type":"Text","value":" "}, {"type":"OperatorWord","value":"or"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"d"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Keyword","value":"static"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Name","value":"fmap"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"(^"}, {"type":"Name","value":"b"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"c"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"d"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"e"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"konst"}, {"type":"Text","value":" "}, {"type":"Name","value":"a"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"f"}, {"type":"Operator","value":"))"}, {"type":"Text","value":"\n\n "}, {"type":"CommentSingle","value":"// call overridden replace if present\n"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"static"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"inline"}, {"type":"Text","value":" "}, {"type":"Name","value":"replace"}, {"type":"Operator","value":"\u003c"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"a"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"b"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"c"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"when"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"b"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Keyword","value":"static"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Name","value":"replace"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"a"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"b"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"c"}, {"type":"Operator","value":")\u003e("}, {"type":"Name","value":"a"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"a"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"f"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"b"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"(^"}, {"type":"Name","value":"b"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Keyword","value":"static"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Name","value":"replace"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"a"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"b"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"c"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"a"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"f"}, {"type":"Operator","value":"))"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"inline"}, {"type":"Text","value":" "}, {"type":"Name","value":"replace_instance"}, {"type":"Operator","value":"\u003c"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"a"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"b"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"c"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"d"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"when"}, {"type":"Text","value":" "}, {"type":"Operator","value":"(^"}, {"type":"Name","value":"a"}, {"type":"Text","value":" "}, {"type":"OperatorWord","value":"or"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"c"}, {"type":"Operator","value":"):"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Keyword","value":"static"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Name","value":"replace"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"b"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"c"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"d"}, {"type":"Operator","value":")\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"a"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"b"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"f"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"c"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"((^"}, {"type":"Name","value":"a"}, {"type":"Text","value":" "}, {"type":"OperatorWord","value":"or"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"c"}, {"type":"Operator","value":"):"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Keyword","value":"static"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Name","value":"replace"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"b"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"c"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"d"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"a"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"f"}, {"type":"Operator","value":"))"}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Note the concrete type 'CFunctor' specified in the signature\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"inline"}, {"type":"Text","value":" "}, {"type":"Name","value":"replace"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"a"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"a"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"f"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"b"}, {"type":"Operator","value":"):"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"a0"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"when"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"CFunctor"}, {"type":"Text","value":" "}, {"type":"OperatorWord","value":"or"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"b"}, {"type":"Operator","value":"):"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Keyword","value":"static"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Name","value":"replace"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"a"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"b"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"a0"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Name","value":"replace_instance"}, {"type":"Operator","value":"\u003c"}, {"type":"Name","value":"CFunctor"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Operator","value":"_,"}, {"type":"Text","value":" "}, {"type":"Operator","value":"_,"}, {"type":"Text","value":" "}, {"type":"Operator","value":"_\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Name","value":"a"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"f"}, {"type":"Operator","value":")"}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// End of SRTP synthax\n"}, {"type":"Text","value":"\n"}, {"type":"CommentSingle","value":"// Make sure constraints are correctly colored\n// https://docs.microsoft.com/en-us/dotnet/fsharp/language-reference/generics/constraints\n"}, {"type":"Text","value":"\n"}, {"type":"CommentSingle","value":"// Base Type Constraint\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"Class1"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"when"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Operator","value":":\u003e"}, {"type":"Text","value":" "}, {"type":"NameNamespace","value":"System"}, {"type":"Punctuation","value":"."}, {"type":"Name","value":"Exception"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"class"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"end"}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Interface Type Constraint\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"Class2"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"when"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Operator","value":":\u003e"}, {"type":"Text","value":" "}, {"type":"NameNamespace","value":"System"}, {"type":"Punctuation","value":"."}, {"type":"Name","value":"IComparable"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"class"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"end"}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Null constraint\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"Class3"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"when"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"null"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"class"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"end"}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Member constraint with static member\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"Class4"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"when"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Keyword","value":"static"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Name","value":"staticMethod1"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"unit"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"class"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"end"}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Member constraint with instance member\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"Class5"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"when"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Name","value":"Method1"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":")\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"class"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"end"}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Member constraint with property\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"Class6"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"when"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Name","value":"Property1"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Operator","value":")\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"class"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"end"}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Constructor constraint\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"Class7"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"when"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Keyword","value":"new"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"unit"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Operator","value":")\u003e("}, {"type":"Name","value":"thing"}, {"type":"Operator","value":":"}, {"type":"Name","value":"int"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"var2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"``ddzdz``"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"list"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"extra"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"as"}, {"type":"Text","value":" "}, {"type":"Name","value":"xxx"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"val"}, {"type":"Text","value":" "}, {"type":"Name","value":"Field"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Keyword","value":"new"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"NameBuiltinPseudo","value":"()"}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Reference type constraint\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"Class8"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"when"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"OperatorWord","value":"not"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"struct"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"class"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"end"}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Enumeration constraint with underlying value specified\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"Class9"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"when"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"enum"}, {"type":"Operator","value":"\u003c"}, {"type":"KeywordType","value":"uint32"}, {"type":"Operator","value":"\u003e\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"class"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"end"}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// 'T must implement IComparable, or be an array type with comparable\n// elements, or be System.IntPtr or System.UIntPtr. Also, 'T must not have\n// the NoComparison attribute.\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"Class10"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"when"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"comparison"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"class"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"end"}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// 'T must support equality. This is true for any type that does not\n// have the NoEquality attribute.\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"Class11"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"when"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"equality"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"class"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"end"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"Class12"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"when"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"delegate"}, {"type":"Operator","value":"\u003c"}, {"type":"KeywordType","value":"obj"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"NameNamespace","value":"System"}, {"type":"Punctuation","value":"."}, {"type":"Name","value":"EventArgs"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"unit"}, {"type":"Operator","value":"\u003e\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"class"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"end"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"Class13"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"when"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"unmanaged"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"class"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"end"}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Member constraints with two type parameters\n// Most often used with static type parameters in inline functions\n"}, {"type":"Text","value":"\n"}, {"type":"CommentSingle","value":"// Test that we are correctly detecting the end of the STRP syntahx when there is only one argument\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"inline"}, {"type":"Text","value":" "}, {"type":"Name","value":"doNothing"}, {"type":"Operator","value":"(_"}, {"type":"Name","value":"value1"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"when"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Keyword","value":"static"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Operator","value":"(+)"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"T"}, {"type":"Operator","value":"))"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"inline"}, {"type":"Text","value":" "}, {"type":"Name","value":"doNothing"}, {"type":"Operator","value":"(_"}, {"type":"Name","value":"value1"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"Word"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"when"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"Word"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Keyword","value":"static"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Name","value":"toJson"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"Word"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"Word"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"Word"}, {"type":"Operator","value":"))"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"inline"}, {"type":"Text","value":" "}, {"type":"Name","value":"add2"}, {"type":"Operator","value":"("}, {"type":"Name","value":"value1"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"T"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"value2"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"when"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Keyword","value":"static"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Operator","value":"(+)"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"T"}, {"type":"Operator","value":"))"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Name","value":"value1"}, {"type":"Text","value":" "}, {"type":"Operator","value":"+"}, {"type":"Text","value":" "}, {"type":"Name","value":"value2"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"inline"}, {"type":"Text","value":" "}, {"type":"Name","value":"add"}, {"type":"Operator","value":"("}, {"type":"Name","value":"value1"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"when"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Keyword","value":"static"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Operator","value":"(+)"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"T"}, {"type":"Operator","value":"),"}, {"type":"Text","value":" "}, {"type":"Name","value":"value2"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"T"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Name","value":"value1"}, {"type":"Text","value":" "}, {"type":"Operator","value":"+"}, {"type":"Text","value":" "}, {"type":"Name","value":"value2"}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// ^T and ^U must support operator +\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"inline"}, {"type":"Text","value":" "}, {"type":"Name","value":"heterogenousAdd"}, {"type":"Operator","value":"("}, {"type":"Name","value":"value1"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"when"}, {"type":"Text","value":" "}, {"type":"Operator","value":"(^"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"OperatorWord","value":"or"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"U"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Keyword","value":"static"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Operator","value":"(+)"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"U"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"T"}, {"type":"Operator","value":"),"}, {"type":"Text","value":" "}, {"type":"Name","value":"value2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"U"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Name","value":"value1"}, {"type":"Text","value":" "}, {"type":"Operator","value":"+"}, {"type":"Text","value":" "}, {"type":"Name","value":"value2"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"inline"}, {"type":"Text","value":" "}, {"type":"Name","value":"heterogenousAdd"}, {"type":"Operator","value":"("}, {"type":"Name","value":"value1"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"Word"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"when"}, {"type":"Text","value":" "}, {"type":"Operator","value":"(^"}, {"type":"Name","value":"Word"}, {"type":"Text","value":" "}, {"type":"OperatorWord","value":"or"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"U"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Keyword","value":"static"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Operator","value":"(+)"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"Word"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"U"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"Word"}, {"type":"Operator","value":"),"}, {"type":"Text","value":" "}, {"type":"Name","value":"value2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"U"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Name","value":"value1"}, {"type":"Text","value":" "}, {"type":"Operator","value":"+"}, {"type":"Text","value":" "}, {"type":"Name","value":"value2"}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// If there are multiple constraints, use the and keyword to separate them.\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"Class14"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Operator","value":","}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"U"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"when"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"equality"}, {"type":"Text","value":" "}, {"type":"OperatorWord","value":"and"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"U"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"equality"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"class"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"end"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"Class15"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"``generic type with space``"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"when"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"``generic type with space``"}, {"type":"Text","value":" "}, {"type":"Operator","value":":\u003e"}, {"type":"Text","value":" "}, {"type":"NameNamespace","value":"System"}, {"type":"Punctuation","value":"."}, {"type":"Name","value":"Exception"}, {"type":"Operator","value":"\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"class"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"end"}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Type constrainst coloration also works in the constructor\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"Class16"}, {"type":"Operator","value":"("}, {"type":"Name","value":"value1"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"when"}, {"type":"Text","value":" "}, {"type":"Operator","value":"(^"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"OperatorWord","value":"or"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"U"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Keyword","value":"static"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"member"}, {"type":"Text","value":" "}, {"type":"Operator","value":"(+)"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"T"}, {"type":"Text","value":" "}, {"type":"Operator","value":"*"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"U"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"T"}, {"type":"Operator","value":"),"}, {"type":"Text","value":" "}, {"type":"Name","value":"value2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"^"}, {"type":"Name","value":"U"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"class"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"end"}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Make sure that `:\u003e` isn't closing the current generic tag\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"inline"}, {"type":"Text","value":" "}, {"type":"Name","value":"create"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"a"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"b"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"when"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"a"}, {"type":"Text","value":" "}, {"type":"Operator","value":":\u003e"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"obj"}, {"type":"Text","value":" "}, {"type":"OperatorWord","value":"and"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"a"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Operator","value":"("}, {"type":"Keyword","value":"new"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"unit"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"a"}, {"type":"Operator","value":")\u003e"}, {"type":"Text","value":" "}, {"type":"NameBuiltinPseudo","value":"()"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"b"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"failwith"}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"\""}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Explicit Fields\n// Adapted from: https://docs.microsoft.com/en-us/dotnet/fsharp/language-reference/members/explicit-fields-the-val-keyword\n// And : https://docs.microsoft.com/en-us/dotnet/fsharp/language-reference/members/let-bindings-in-classes\n"}, {"type":"Text","value":"\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"MyType"}, {"type":"Operator","value":"\u003c"}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"``Generic type with spaces``"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Operator","value":"\u003e"}, {"type":"NameBuiltinPseudo","value":"()"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"mutable"}, {"type":"Text","value":" "}, {"type":"Name","value":"myInt1"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"10"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"static"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"mutable"}, {"type":"Text","value":" "}, {"type":"Name","value":"myInt3"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"3"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"[\u003c"}, {"type":"Name","value":"DefaultValue"}, {"type":"Operator","value":"\u003e]"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"static"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"val"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"mutable"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"private"}, {"type":"Text","value":" "}, {"type":"Name","value":"myInt2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"[\u003c"}, {"type":"Name","value":"DefaultValue"}, {"type":"Operator","value":"\u003e]"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"val"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"mutable"}, {"type":"Text","value":" "}, {"type":"Name","value":"myString"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"``Generic type with spaces``"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"[\u003c"}, {"type":"Name","value":"DefaultValue"}, {"type":"Operator","value":"\u003e]"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"val"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"mutable"}, {"type":"Text","value":" "}, {"type":"Name","value":"myString2"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"'"}, {"type":"Name","value":"T"}, {"type":"Text","value":"\n\n"}, {"type":"Keyword","value":"type"}, {"type":"Text","value":" "}, {"type":"NameClass","value":"MyClass"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"val"}, {"type":"Text","value":" "}, {"type":"Name","value":"a"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"val"}, {"type":"Text","value":" "}, {"type":"Name","value":"b"}, {"type":"Text","value":" "}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"int"}, {"type":"Text","value":"\n "}, {"type":"CommentSingle","value":"// The following version of the constructor is an error\n"}, {"type":"Text","value":" "}, {"type":"CommentSingle","value":"// because b is not initialized.\n"}, {"type":"Text","value":" "}, {"type":"CommentSingle","value":"// new (a0, b0) = { a = a0; }\n"}, {"type":"Text","value":" "}, {"type":"CommentSingle","value":"// The following version is acceptable because all fields are initialized.\n"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"new"}, {"type":"Operator","value":"("}, {"type":"Name","value":"a0"}, {"type":"Operator","value":","}, {"type":"Text","value":" "}, {"type":"Name","value":"b0"}, {"type":"Operator","value":")"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Operator","value":"{"}, {"type":"Text","value":" "}, {"type":"Name","value":"a"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"a0"}, {"type":"Operator","value":";"}, {"type":"Text","value":" "}, {"type":"Name","value":"b"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"b0"}, {"type":"Operator","value":";"}, {"type":"Text","value":" "}, {"type":"Operator","value":"}"}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// Check that SRTP do not break standard syntax between `(` \u0026 `)`\n"}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"incorrect"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"("}, {"type":"Keyword","value":"fun"}, {"type":"Text","value":" "}, {"type":"Name","value":"loadedModel"}, {"type":"Text","value":" "}, {"type":"Operator","value":"-\u003e"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"temp"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Name","value":"async"}, {"type":"Text","value":" "}, {"type":"Operator","value":"{"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"return"}, {"type":"Text","value":" "}, {"type":"Name","value":"0"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"}"}, {"type":"Text","value":"\n "}, {"type":"Keyword","value":"let"}, {"type":"Text","value":" "}, {"type":"NameVariable","value":"loadedModel"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"Operator","value":"{"}, {"type":"Text","value":" "}, {"type":"Name","value":"loadedModel"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"with"}, {"type":"Text","value":" "}, {"type":"Name","value":"FormState"}, {"type":"Text","value":" "}, {"type":"Operator","value":"="}, {"type":"Text","value":" "}, {"type":"NameNamespace","value":"Form"}, {"type":"Punctuation","value":"."}, {"type":"Name","value":"setWaiting"}, {"type":"Text","value":" "}, {"type":"Keyword","value":"false"}, {"type":"Text","value":" "}, {"type":"Name","value":"loadedModel"}, {"type":"Operator","value":"."}, {"type":"Name","value":"FormState"}, {"type":"Text","value":" "}, {"type":"Operator","value":"}"}, {"type":"Text","value":"\n "}, {"type":"NameBuiltinPseudo","value":"()"}, {"type":"Operator","value":")"}, {"type":"Text","value":"\n"} ]