[ {"type":"LiteralString","value":"\"this is a test\""}, {"type":"Text","value":"\n"}, {"type":"LiteralNumber","value":"5"}, {"type":"Text","value":"\n"}, {"type":"KeywordConstant","value":"false"}, {"type":"Text","value":"\n\n"}, {"type":"CommentSingle","value":"// This is a comment"}, {"type":"Text","value":"\n"}, {"type":"Name","value":"a"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Punctuation","value":"{"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"foo"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"CommentSingle","value":"// foo is a string"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"[="}, {"type":"Punctuation","value":"~"}, {"type":"LiteralString","value":"\"^i\""}, {"type":"Operator","value":"]:"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"int"}, {"type":"Text","value":" "}, {"type":"CommentSingle","value":"// all other fields starting with i are integers"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"[="}, {"type":"Punctuation","value":"~"}, {"type":"LiteralString","value":"\"^b\""}, {"type":"Operator","value":"]:"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"bool"}, {"type":"Text","value":" "}, {"type":"CommentSingle","value":"// all other fields starting with b are booleans"}, {"type":"Text","value":"\n "}, {"type":"Operator","value":"[\u003e"}, {"type":"LiteralString","value":"\"c\""}, {"type":"Operator","value":"]:"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"CommentSingle","value":"// all other fields lexically after c are strings"}, {"type":"Text","value":"\n\n "}, {"type":"Operator","value":"..."}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":" "}, {"type":"CommentSingle","value":"// all other fields must be a string. Note: default constraints are not yet implemented."}, {"type":"Text","value":"\n"}, {"type":"Punctuation","value":"}"}, {"type":"Text","value":"\n\n"}, {"type":"Name","value":"x"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"#\"\"\"\n\n "}, {"type":"LiteralStringInterpol","value":"\\#("}, {"type":"Name","value":"test"}, {"type":"LiteralStringInterpol","value":")"}, {"type":"LiteralString","value":"\n\n\"\"\""}, {"type":"Text","value":"\n\n"}, {"type":"Name","value":"b"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"a"}, {"type":"Text","value":" "}, {"type":"Operator","value":"\u0026"}, {"type":"Text","value":" "}, {"type":"Punctuation","value":"{"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"i3"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"LiteralNumber","value":"3"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"bar"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordConstant","value":"true"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"other"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"LiteralString","value":"\"a string\""}, {"type":"Text","value":"\n"}, {"type":"Punctuation","value":"}"}, {"type":"Text","value":"\n\n"}, {"type":"Name","value":"A"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"Name","value":"close"}, {"type":"Punctuation","value":"({"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"field1"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":"\n "}, {"type":"Name","value":"field2"}, {"type":"Operator","value":":"}, {"type":"Text","value":" "}, {"type":"KeywordType","value":"string"}, {"type":"Text","value":"\n"}, {"type":"Punctuation","value":"})"}, {"type":"Text","value":"\n\n"} ]