Expected one of:
* BINARY_OP
* QMARK
* RBRACE
Traceback (most recent call last):
File "/xxx/.venv/lib/python3.12/site-packages/lark/parsers/lalr_parser_state.py", line 77, in feed_token
action, arg = states[state][token.type]
~~~~~~~~~~~~~^^^^^^^^^^^^
KeyError: 'COLON'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
...
tree = hcl2.parse(f)
^^^^^^^^^^^^^
File "/xxx/.venv/lib/python3.12/site-packages/hcl2/api.py", line 37, in parse
return parses(file.read())
^^^^^^^^^^^^^^^^^^^
File "/xxx/.venv/lib/python3.12/site-packages/hcl2/api.py", line 44, in parses
return reconstruction_parser().parse(text)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/xxx/.venv/lib/python3.12/site-packages/lark/lark.py", line 655, in parse
return self.parser.parse(text, start=start, on_error=on_error)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/xxx/.venv/lib/python3.12/site-packages/lark/parser_frontends.py", line 104, in parse
return self.parser.parse(stream, chosen_start, **kw)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/xxx/.venv/lib/python3.12/site-packages/lark/parsers/lalr_parser.py", line 42, in parse
return self.parser.parse(lexer, start)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/xxx/.venv/lib/python3.12/site-packages/lark/parsers/lalr_parser.py", line 88, in parse
return self.parse_from_state(parser_state)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/xxx/.venv/lib/python3.12/site-packages/lark/parsers/lalr_parser.py", line 111, in parse_from_state
raise e
File "/xxx/.venv/lib/python3.12/site-packages/lark/parsers/lalr_parser.py", line 102, in parse_from_state
state.feed_token(token)
File "/xxx/.venv/lib/python3.12/site-packages/lark/parsers/lalr_parser_state.py", line 80, in feed_token
raise UnexpectedToken(token, expected, state=self, interactive_parser=None)
lark.exceptions.UnexpectedToken: Unexpected token Token('COLON', ':') at line 2, column 24.
Expected one of:
* BINARY_OP
* QMARK
* RBRACE
Describe the bug
When parsing the snippet below, $$ is not recognized as an escaped $
Software:
Snippet of HCL2 code causing the unexpected behaviour:
Expected behavior
parse to "bar${baz:bat}"
Exception traceback (if applicable):