---input--- { x = 1; y = 2; } { foo.bar = 1; } rec { x = "foo"; y = x + "bar"; } [ "foo" "bar" "baz" ] [ 1 2 3 ] [ (f 1) { a = 1; b = 2; } [ "c" ] ] ---tokens--- '{' Punctuation ' ' Text 'x' Literal.String.Symbol ' ' Text '=' Operator ' ' Text '1' Literal.Number.Integer ';' Punctuation ' ' Text 'y' Literal.String.Symbol ' ' Text '=' Operator ' ' Text '2' Literal.Number.Integer ';' Punctuation ' ' Text '}' Punctuation '\n\n' Text '{' Punctuation ' ' Text 'foo' Text '.' Operator 'bar' Literal.String.Symbol ' ' Text '=' Operator ' ' Text '1' Literal.Number.Integer ';' Punctuation ' ' Text '}' Punctuation '\n\n' Text 'rec' Keyword ' ' Text '{' Punctuation ' ' Text 'x' Literal.String.Symbol ' ' Text '=' Operator ' ' Text '"' Literal.String.Double 'foo' Literal.String.Double '"' Literal.String.Double ';' Punctuation ' ' Text 'y' Literal.String.Symbol ' ' Text '=' Operator ' ' Text 'x' Text ' ' Text '+' Operator ' ' Text '"' Literal.String.Double 'bar' Literal.String.Double '"' Literal.String.Double ';' Punctuation ' ' Text '}' Punctuation '\n\n' Text '[' Punctuation ' ' Text '"' Literal.String.Double 'foo' Literal.String.Double '"' Literal.String.Double ' ' Text '"' Literal.String.Double 'bar' Literal.String.Double '"' Literal.String.Double ' ' Text '"' Literal.String.Double 'baz' Literal.String.Double '"' Literal.String.Double ' ' Text ']' Punctuation '\n\n' Text '[' Punctuation ' ' Text '1' Literal.Number.Integer ' ' Text '2' Literal.Number.Integer ' ' Text '3' Literal.Number.Integer ' ' Text ']' Punctuation '\n\n' Text '[' Punctuation ' ' Text '(' Punctuation 'f' Text ' ' Text '1' Literal.Number.Integer ')' Punctuation ' ' Text '{' Punctuation ' ' Text 'a' Literal.String.Symbol ' ' Text '=' Operator ' ' Text '1' Literal.Number.Integer ';' Punctuation ' ' Text 'b' Literal.String.Symbol ' ' Text '=' Operator ' ' Text '2' Literal.Number.Integer ';' Punctuation ' ' Text '}' Punctuation ' ' Text '[' Punctuation ' ' Text '"' Literal.String.Double 'c' Literal.String.Double '"' Literal.String.Double ' ' Text ']' Punctuation ' ' Text ']' Punctuation '\n' Text