DefinitionTree { definitions: [ Function( FunctionDefinition { comments: CommentGroup { comments: [], }, attributes: [], function: Keyword { value: "function", position: 0, }, name: Identifier { position: 9, value: "main", }, templates: None, parameters: FunctionLikeParameterListDefinition { comments: CommentGroup { comments: [], }, left_parenthesis: 13, parameters: CommaSeparated { inner: [], commas: [], }, right_parenthesis: 14, }, return_type: FunctionLikeReturnTypeDefinition { colon: 15, type_definition: Void( Keyword { value: "void", position: 17, }, ), }, body: BlockStatement { comments: CommentGroup { comments: [], }, left_brace: 22, statements: [ Expression( ExpressionStatement { comments: CommentGroup { comments: [], }, expression: StringOperation( Concat { comments: CommentGroup { comments: [], }, left: StringOperation( Concat { comments: CommentGroup { comments: [], }, left: Literal( String( LiteralString { comments: CommentGroup { comments: [], }, value: "'foo'", position: 28, }, ), ), dot: 34, right: Literal( String( LiteralString { comments: CommentGroup { comments: [], }, value: "'bar'", position: 36, }, ), ), }, ), dot: 42, right: Literal( String( LiteralString { comments: CommentGroup { comments: [], }, value: "'baz'", position: 44, }, ), ), }, ), semicolon: 49, }, ), ], right_brace: 51, }, }, ), ], eof: 53, }