@@ -396,15 +396,7 @@ def _is_string_wrapped_tf(interp_s: str) -> bool:
396396
397397 return True
398398
399- def _newline (self , level : int , comma : bool = False , count : int = 1 ) -> Tree :
400- # some rules expect the `new_line_and_or_comma` token
401- if comma :
402- return Tree (
403- Token ("RULE" , "new_line_and_or_comma" ),
404- [self ._newline (level = level , comma = False , count = count )],
405- )
406-
407- # otherwise, return the `new_line_or_comment` token
399+ def _newline (self , level : int , count : int = 1 ) -> Tree :
408400 return Tree (
409401 Token ("RULE" , "new_line_or_comment" ),
410402 [Token ("NL_OR_COMMENT" , f"\n { ' ' * level } " ) for _ in range (count )],
@@ -561,20 +553,27 @@ def _transform_value_to_expr_term(self, value, level) -> Union[Token, Tree]:
561553 for i , (k , dict_v ) in enumerate (value .items ()):
562554 if k in ["__start_line__" , "__end_line__" ]:
563555 continue
564- identifier = self . _name_to_identifier ( k )
556+
565557 value_expr_term = self ._transform_value_to_expr_term (dict_v , level + 1 )
566558 elems .append (
567559 Tree (
568560 Token ("RULE" , "object_elem" ),
569- [identifier , Token ("EQ" , " =" ), value_expr_term ],
561+ [
562+ Tree (
563+ Token ("RULE" , "object_elem_key" ),
564+ [Tree (Token ("RULE" , "identifier" ), [Token ("NAME" , k )])],
565+ ),
566+ Token ("EQ" , " =" ),
567+ value_expr_term ,
568+ ],
570569 )
571570 )
572571
573572 # add indentation appropriately
574573 if i < len (value ) - 1 :
575- elems .append (self ._newline (level + 1 , comma = True ))
574+ elems .append (self ._newline (level + 1 ))
576575 else :
577- elems .append (self ._newline (level , comma = True ))
576+ elems .append (self ._newline (level ))
578577 return Tree (
579578 Token ("RULE" , "expr_term" ), [Tree (Token ("RULE" , "object" ), elems )]
580579 )
@@ -630,7 +629,7 @@ def _transform_value_to_expr_term(self, value, level) -> Union[Token, Tree]:
630629 if parsed_value .data == Token ("RULE" , "expr_term" ):
631630 return parsed_value
632631
633- # wrap other types of syntax as an expression (in parenthesis )
632+ # wrap other types of syntax as an expression (in parentheses )
634633 return Tree (Token ("RULE" , "expr_term" ), [parsed_value ])
635634
636635 # otherwise it's just a string.
0 commit comments