@@ -112,10 +112,7 @@ token_T* lexer_parse_whitespace(lexer_T* lexer) {
112112 lexer_advance (lexer );
113113 }
114114
115- char * value = buffer_value (& buffer );
116- buffer_free (& buffer );
117-
118- return token_init (value , TOKEN_WHITESPACE , lexer );
115+ return token_init (buffer .value , TOKEN_WHITESPACE , lexer );
119116}
120117
121118token_T * lexer_parse_tag_name (lexer_T * lexer ) {
@@ -126,10 +123,7 @@ token_T* lexer_parse_tag_name(lexer_T* lexer) {
126123 lexer_advance (lexer );
127124 }
128125
129- char * value = buffer_value (& buffer );
130- buffer_free (& buffer );
131-
132- return token_init (value , TOKEN_HTML_TAG_NAME , lexer );
126+ return token_init (buffer .value , TOKEN_HTML_TAG_NAME , lexer );
133127}
134128
135129token_T * lexer_parse_attribute_name (lexer_T * lexer ) {
@@ -141,10 +135,7 @@ token_T* lexer_parse_attribute_name(lexer_T* lexer) {
141135 lexer_advance (lexer );
142136 }
143137
144- char * value = buffer_value (& buffer );
145- buffer_free (& buffer );
146-
147- return token_init (value , TOKEN_HTML_ATTRIBUTE_NAME , lexer );
138+ return token_init (buffer .value , TOKEN_HTML_ATTRIBUTE_NAME , lexer );
148139}
149140
150141token_T * lexer_parse_attribute_value (lexer_T * lexer ) {
@@ -162,10 +153,7 @@ token_T* lexer_parse_attribute_value(lexer_T* lexer) {
162153
163154 lexer -> state = STATE_HTML_ATTRIBUTE_VALUE ;
164155
165- char * value = buffer_value (& buffer );
166- buffer_free (& buffer );
167-
168- return token_init (value , TOKEN_HTML_ATTRIBUTE_VALUE , lexer );
156+ return token_init (buffer .value , TOKEN_HTML_ATTRIBUTE_VALUE , lexer );
169157}
170158
171159token_T * lexer_parse_text_content (lexer_T * lexer ) {
@@ -176,10 +164,7 @@ token_T* lexer_parse_text_content(lexer_T* lexer) {
176164 lexer_advance (lexer );
177165 }
178166
179- char * value = buffer_value (& buffer );
180- buffer_free (& buffer );
181-
182- return token_init (value , TOKEN_TEXT_CONTENT , lexer );
167+ return token_init (buffer .value , TOKEN_TEXT_CONTENT , lexer );
183168}
184169
185170token_T * lexer_parse_html_comment_content (lexer_T * lexer ) {
@@ -193,10 +178,7 @@ token_T* lexer_parse_html_comment_content(lexer_T* lexer) {
193178 lexer_advance (lexer );
194179 lexer -> state = STATE_HTML_COMMENT_CLOSE ;
195180
196- char * value = buffer_value (& buffer );
197- buffer_free (& buffer );
198-
199- return token_init (value , TOKEN_HTML_COMMENT_CONTENT , lexer );
181+ return token_init (buffer .value , TOKEN_HTML_COMMENT_CONTENT , lexer );
200182}
201183
202184token_T * lexer_handle_data_state (lexer_T * lexer ) {
@@ -272,10 +254,7 @@ token_T* lexer_handle_erb_open_state(lexer_T* lexer) {
272254
273255 lexer -> state = STATE_DATA ;
274256
275- char * value = buffer_value (& buffer );
276- buffer_free (& buffer );
277-
278- return token_init (value , TOKEN_ERB_CONTENT , lexer );
257+ return token_init (buffer .value , TOKEN_ERB_CONTENT , lexer );
279258}
280259
281260// <div class="abc"></div>
0 commit comments