Herb C Reference
Loading...
Searching...
No Matches
ast_nodes.h
Go to the documentation of this file.
1// NOTE: This file is generated by the templates/template.rb script and should not
2// be modified manually. See /home/runner/work/herb/herb/templates/src/include/ast_nodes.h.erb
3
4#ifndef HERB_AST_NODES_H
5#define HERB_AST_NODES_H
6
7#include <stdbool.h>
8#include <prism.h>
9
10#include "analyze/analyzed_ruby.h"
11#include "element_source.h"
12#include "herb_prism_node.h"
13#include "prism_context.h"
14#include "prism_serialized.h"
15#include "location.h"
16#include "position.h"
17#include "token_struct.h"
18#include "util/hb_allocator.h"
19#include "util/hb_array.h"
20#include "util/hb_buffer.h"
21#include "util/hb_string.h"
22
65
66typedef struct AST_NODE_STRUCT {
69 // maybe a range too?
70 hb_array_T* errors;
72
73
80
85
94
101
109
114
119
129
141
149
154
161
166
172
181
186
193
200
207
214
219
230
237
245
257
267
276
288
300
310
320
330
339
347
360
372
378
405
412
421
422AST_DOCUMENT_NODE_T* ast_document_node_init(hb_array_T* children, herb_prism_context_T* prism_context, herb_prism_node_T prism_node, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
423AST_LITERAL_NODE_T* ast_literal_node_init(hb_string_T content, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
424AST_HTML_OPEN_TAG_NODE_T* ast_html_open_tag_node_init(token_T* tag_opening, token_T* tag_name, token_T* tag_closing, hb_array_T* children, bool is_void, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
425AST_HTML_CONDITIONAL_OPEN_TAG_NODE_T* ast_html_conditional_open_tag_node_init(AST_NODE_T* conditional, token_T* tag_name, bool is_void, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
426AST_HTML_CLOSE_TAG_NODE_T* ast_html_close_tag_node_init(token_T* tag_opening, token_T* tag_name, hb_array_T* children, token_T* tag_closing, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
427AST_HTML_OMITTED_CLOSE_TAG_NODE_T* ast_html_omitted_close_tag_node_init(token_T* tag_name, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
428AST_HTML_VIRTUAL_CLOSE_TAG_NODE_T* ast_html_virtual_close_tag_node_init(token_T* tag_name, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
429AST_HTML_ELEMENT_NODE_T* ast_html_element_node_init(AST_NODE_T* open_tag, token_T* tag_name, hb_array_T* body, AST_NODE_T* close_tag, bool is_void, hb_string_T element_source, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
430AST_HTML_CONDITIONAL_ELEMENT_NODE_T* ast_html_conditional_element_node_init(hb_string_T condition, AST_NODE_T* open_conditional, struct AST_HTML_OPEN_TAG_NODE_STRUCT* open_tag, hb_array_T* body, AST_NODE_T* close_tag, AST_NODE_T* close_conditional, token_T* tag_name, hb_string_T element_source, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
431AST_HTML_ATTRIBUTE_VALUE_NODE_T* ast_html_attribute_value_node_init(token_T* open_quote, hb_array_T* children, token_T* close_quote, bool quoted, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
432AST_HTML_ATTRIBUTE_NAME_NODE_T* ast_html_attribute_name_node_init(hb_array_T* children, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
433AST_HTML_ATTRIBUTE_NODE_T* ast_html_attribute_node_init(struct AST_HTML_ATTRIBUTE_NAME_NODE_STRUCT* name, token_T* equals, struct AST_HTML_ATTRIBUTE_VALUE_NODE_STRUCT* value, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
434AST_RUBY_LITERAL_NODE_T* ast_ruby_literal_node_init(hb_string_T content, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
435AST_RUBY_HTML_ATTRIBUTES_SPLAT_NODE_T* ast_ruby_html_attributes_splat_node_init(hb_string_T content, hb_string_T prefix, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
436AST_ERB_OPEN_TAG_NODE_T* ast_erb_open_tag_node_init(token_T* tag_opening, token_T* content, token_T* tag_closing, token_T* tag_name, hb_array_T* children, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
437AST_HTML_TEXT_NODE_T* ast_html_text_node_init(hb_string_T content, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
438AST_HTML_COMMENT_NODE_T* ast_html_comment_node_init(token_T* comment_start, hb_array_T* children, token_T* comment_end, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
439AST_HTML_DOCTYPE_NODE_T* ast_html_doctype_node_init(token_T* tag_opening, hb_array_T* children, token_T* tag_closing, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
440AST_XML_DECLARATION_NODE_T* ast_xml_declaration_node_init(token_T* tag_opening, hb_array_T* children, token_T* tag_closing, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
441AST_CDATA_NODE_T* ast_cdata_node_init(token_T* tag_opening, hb_array_T* children, token_T* tag_closing, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
442AST_WHITESPACE_NODE_T* ast_whitespace_node_init(token_T* value, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
443AST_ERB_CONTENT_NODE_T* ast_erb_content_node_init(token_T* tag_opening, token_T* content, token_T* tag_closing, analyzed_ruby_T* analyzed_ruby, bool parsed, bool valid, herb_prism_node_T prism_node, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
444AST_ERB_END_NODE_T* ast_erb_end_node_init(token_T* tag_opening, token_T* content, token_T* tag_closing, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
445AST_ERB_ELSE_NODE_T* ast_erb_else_node_init(token_T* tag_opening, token_T* content, token_T* tag_closing, hb_array_T* statements, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
446AST_ERB_IF_NODE_T* ast_erb_if_node_init(token_T* tag_opening, token_T* content, token_T* tag_closing, location_T* then_keyword, herb_prism_node_T prism_node, hb_array_T* statements, AST_NODE_T* subsequent, struct AST_ERB_END_NODE_STRUCT* end_node, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
447AST_ERB_BLOCK_NODE_T* ast_erb_block_node_init(token_T* tag_opening, token_T* content, token_T* tag_closing, herb_prism_node_T prism_node, hb_array_T* body, struct AST_ERB_END_NODE_STRUCT* end_node, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
448AST_ERB_WHEN_NODE_T* ast_erb_when_node_init(token_T* tag_opening, token_T* content, token_T* tag_closing, location_T* then_keyword, hb_array_T* statements, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
449AST_ERB_CASE_NODE_T* ast_erb_case_node_init(token_T* tag_opening, token_T* content, token_T* tag_closing, hb_array_T* children, herb_prism_node_T prism_node, hb_array_T* conditions, struct AST_ERB_ELSE_NODE_STRUCT* else_clause, struct AST_ERB_END_NODE_STRUCT* end_node, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
450AST_ERB_CASE_MATCH_NODE_T* ast_erb_case_match_node_init(token_T* tag_opening, token_T* content, token_T* tag_closing, hb_array_T* children, herb_prism_node_T prism_node, hb_array_T* conditions, struct AST_ERB_ELSE_NODE_STRUCT* else_clause, struct AST_ERB_END_NODE_STRUCT* end_node, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
451AST_ERB_WHILE_NODE_T* ast_erb_while_node_init(token_T* tag_opening, token_T* content, token_T* tag_closing, herb_prism_node_T prism_node, hb_array_T* statements, struct AST_ERB_END_NODE_STRUCT* end_node, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
452AST_ERB_UNTIL_NODE_T* ast_erb_until_node_init(token_T* tag_opening, token_T* content, token_T* tag_closing, herb_prism_node_T prism_node, hb_array_T* statements, struct AST_ERB_END_NODE_STRUCT* end_node, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
453AST_ERB_FOR_NODE_T* ast_erb_for_node_init(token_T* tag_opening, token_T* content, token_T* tag_closing, herb_prism_node_T prism_node, hb_array_T* statements, struct AST_ERB_END_NODE_STRUCT* end_node, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
454AST_ERB_RESCUE_NODE_T* ast_erb_rescue_node_init(token_T* tag_opening, token_T* content, token_T* tag_closing, hb_array_T* statements, struct AST_ERB_RESCUE_NODE_STRUCT* subsequent, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
455AST_ERB_ENSURE_NODE_T* ast_erb_ensure_node_init(token_T* tag_opening, token_T* content, token_T* tag_closing, hb_array_T* statements, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
456AST_ERB_BEGIN_NODE_T* ast_erb_begin_node_init(token_T* tag_opening, token_T* content, token_T* tag_closing, herb_prism_node_T prism_node, hb_array_T* statements, struct AST_ERB_RESCUE_NODE_STRUCT* rescue_clause, struct AST_ERB_ELSE_NODE_STRUCT* else_clause, struct AST_ERB_ENSURE_NODE_STRUCT* ensure_clause, struct AST_ERB_END_NODE_STRUCT* end_node, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
457AST_ERB_UNLESS_NODE_T* ast_erb_unless_node_init(token_T* tag_opening, token_T* content, token_T* tag_closing, location_T* then_keyword, herb_prism_node_T prism_node, hb_array_T* statements, struct AST_ERB_ELSE_NODE_STRUCT* else_clause, struct AST_ERB_END_NODE_STRUCT* end_node, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
458AST_RUBY_RENDER_LOCAL_NODE_T* ast_ruby_render_local_node_init(token_T* name, struct AST_RUBY_LITERAL_NODE_STRUCT* value, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
459AST_ERB_RENDER_NODE_T* ast_erb_render_node_init(token_T* tag_opening, token_T* content, token_T* tag_closing, analyzed_ruby_T* analyzed_ruby, herb_prism_node_T prism_node, token_T* partial, token_T* template_path, token_T* layout, token_T* file, token_T* inline_template, token_T* body, token_T* plain, token_T* html, token_T* renderable, token_T* collection, token_T* object, token_T* as_name, token_T* spacer_template, token_T* formats, token_T* variants, token_T* handlers, token_T* content_type, hb_array_T* locals, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
460AST_ERB_YIELD_NODE_T* ast_erb_yield_node_init(token_T* tag_opening, token_T* content, token_T* tag_closing, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
461AST_ERB_IN_NODE_T* ast_erb_in_node_init(token_T* tag_opening, token_T* content, token_T* tag_closing, location_T* then_keyword, hb_array_T* statements, position_T start_position, position_T end_position, hb_array_T* errors, hb_allocator_T* allocator);
462
463hb_string_T ast_node_type_to_string(AST_NODE_T* node);
464hb_string_T ast_node_human_type(AST_NODE_T* node);
465
466#endif
struct AST_NODE_STRUCT AST_NODE_T
struct AST_HTML_DOCTYPE_NODE_STRUCT AST_HTML_DOCTYPE_NODE_T
AST_ERB_ENSURE_NODE_T * ast_erb_ensure_node_init(token_T *tag_opening, token_T *content, token_T *tag_closing, hb_array_T *statements, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:517
struct AST_CDATA_NODE_STRUCT AST_CDATA_NODE_T
AST_DOCUMENT_NODE_T * ast_document_node_init(hb_array_T *children, herb_prism_context_T *prism_context, herb_prism_node_T prism_node, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:20
struct AST_ERB_BEGIN_NODE_STRUCT AST_ERB_BEGIN_NODE_T
struct AST_ERB_ENSURE_NODE_STRUCT AST_ERB_ENSURE_NODE_T
struct AST_ERB_WHEN_NODE_STRUCT AST_ERB_WHEN_NODE_T
struct AST_DOCUMENT_NODE_STRUCT AST_DOCUMENT_NODE_T
AST_ERB_FOR_NODE_T * ast_erb_for_node_init(token_T *tag_opening, token_T *content, token_T *tag_closing, herb_prism_node_T prism_node, hb_array_T *statements, struct AST_ERB_END_NODE_STRUCT *end_node, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:484
AST_HTML_CLOSE_TAG_NODE_T * ast_html_close_tag_node_init(token_T *tag_opening, token_T *tag_name, hb_array_T *children, token_T *tag_closing, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:76
AST_HTML_DOCTYPE_NODE_T * ast_html_doctype_node_init(token_T *tag_opening, hb_array_T *children, token_T *tag_closing, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:259
AST_ERB_CASE_MATCH_NODE_T * ast_erb_case_match_node_init(token_T *tag_opening, token_T *content, token_T *tag_closing, hb_array_T *children, herb_prism_node_T prism_node, hb_array_T *conditions, struct AST_ERB_ELSE_NODE_STRUCT *else_clause, struct AST_ERB_END_NODE_STRUCT *end_node, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:431
struct AST_HTML_TEXT_NODE_STRUCT AST_HTML_TEXT_NODE_T
AST_WHITESPACE_NODE_T * ast_whitespace_node_init(token_T *value, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:301
AST_ERB_BEGIN_NODE_T * ast_erb_begin_node_init(token_T *tag_opening, token_T *content, token_T *tag_closing, herb_prism_node_T prism_node, hb_array_T *statements, struct AST_ERB_RESCUE_NODE_STRUCT *rescue_clause, struct AST_ERB_ELSE_NODE_STRUCT *else_clause, struct AST_ERB_ENSURE_NODE_STRUCT *ensure_clause, struct AST_ERB_END_NODE_STRUCT *end_node, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:532
struct AST_HTML_CONDITIONAL_OPEN_TAG_NODE_STRUCT AST_HTML_CONDITIONAL_OPEN_TAG_NODE_T
AST_ERB_RENDER_NODE_T * ast_erb_render_node_init(token_T *tag_opening, token_T *content, token_T *tag_closing, analyzed_ruby_T *analyzed_ruby, herb_prism_node_T prism_node, token_T *partial, token_T *template_path, token_T *layout, token_T *file, token_T *inline_template, token_T *body, token_T *plain, token_T *html, token_T *renderable, token_T *collection, token_T *object, token_T *as_name, token_T *spacer_template, token_T *formats, token_T *variants, token_T *handlers, token_T *content_type, hb_array_T *locals, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:584
struct AST_HTML_ATTRIBUTE_NAME_NODE_STRUCT AST_HTML_ATTRIBUTE_NAME_NODE_T
struct AST_ERB_CASE_MATCH_NODE_STRUCT AST_ERB_CASE_MATCH_NODE_T
AST_ERB_ELSE_NODE_T * ast_erb_else_node_init(token_T *tag_opening, token_T *content, token_T *tag_closing, hb_array_T *statements, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:345
AST_HTML_ATTRIBUTE_NODE_T * ast_html_attribute_node_init(struct AST_HTML_ATTRIBUTE_NAME_NODE_STRUCT *name, token_T *equals, struct AST_HTML_ATTRIBUTE_VALUE_NODE_STRUCT *value, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:178
struct AST_ERB_FOR_NODE_STRUCT AST_ERB_FOR_NODE_T
AST_CDATA_NODE_T * ast_cdata_node_init(token_T *tag_opening, hb_array_T *children, token_T *tag_closing, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:287
AST_XML_DECLARATION_NODE_T * ast_xml_declaration_node_init(token_T *tag_opening, hb_array_T *children, token_T *tag_closing, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:273
AST_HTML_ATTRIBUTE_NAME_NODE_T * ast_html_attribute_name_node_init(hb_array_T *children, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:166
AST_ERB_UNLESS_NODE_T * ast_erb_unless_node_init(token_T *tag_opening, token_T *content, token_T *tag_closing, location_T *then_keyword, herb_prism_node_T prism_node, hb_array_T *statements, struct AST_ERB_ELSE_NODE_STRUCT *else_clause, struct AST_ERB_END_NODE_STRUCT *end_node, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:552
AST_ERB_UNTIL_NODE_T * ast_erb_until_node_init(token_T *tag_opening, token_T *content, token_T *tag_closing, herb_prism_node_T prism_node, hb_array_T *statements, struct AST_ERB_END_NODE_STRUCT *end_node, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:467
AST_ERB_IN_NODE_T * ast_erb_in_node_init(token_T *tag_opening, token_T *content, token_T *tag_closing, location_T *then_keyword, hb_array_T *statements, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:632
AST_HTML_TEXT_NODE_T * ast_html_text_node_init(hb_string_T content, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:233
AST_ERB_WHILE_NODE_T * ast_erb_while_node_init(token_T *tag_opening, token_T *content, token_T *tag_closing, herb_prism_node_T prism_node, hb_array_T *statements, struct AST_ERB_END_NODE_STRUCT *end_node, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:450
AST_HTML_CONDITIONAL_ELEMENT_NODE_T * ast_html_conditional_element_node_init(hb_string_T condition, AST_NODE_T *open_conditional, struct AST_HTML_OPEN_TAG_NODE_STRUCT *open_tag, hb_array_T *body, AST_NODE_T *close_tag, AST_NODE_T *close_conditional, token_T *tag_name, hb_string_T element_source, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:132
struct AST_WHITESPACE_NODE_STRUCT AST_WHITESPACE_NODE_T
struct AST_ERB_BLOCK_NODE_STRUCT AST_ERB_BLOCK_NODE_T
struct AST_ERB_IF_NODE_STRUCT AST_ERB_IF_NODE_T
AST_ERB_OPEN_TAG_NODE_T * ast_erb_open_tag_node_init(token_T *tag_opening, token_T *content, token_T *tag_closing, token_T *tag_name, hb_array_T *children, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:217
struct AST_ERB_WHILE_NODE_STRUCT AST_ERB_WHILE_NODE_T
struct AST_ERB_END_NODE_STRUCT AST_ERB_END_NODE_T
struct AST_HTML_CONDITIONAL_ELEMENT_NODE_STRUCT AST_HTML_CONDITIONAL_ELEMENT_NODE_T
struct AST_ERB_YIELD_NODE_STRUCT AST_ERB_YIELD_NODE_T
AST_RUBY_LITERAL_NODE_T * ast_ruby_literal_node_init(hb_string_T content, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:192
struct AST_ERB_UNTIL_NODE_STRUCT AST_ERB_UNTIL_NODE_T
struct AST_ERB_UNLESS_NODE_STRUCT AST_ERB_UNLESS_NODE_T
ast_node_type_T
Definition ast_nodes.h:23
@ AST_ERB_UNTIL_NODE
Definition ast_nodes.h:54
@ AST_ERB_IN_NODE
Definition ast_nodes.h:63
@ AST_ERB_END_NODE
Definition ast_nodes.h:46
@ AST_ERB_OPEN_TAG_NODE
Definition ast_nodes.h:38
@ AST_ERB_BLOCK_NODE
Definition ast_nodes.h:49
@ AST_RUBY_LITERAL_NODE
Definition ast_nodes.h:36
@ AST_HTML_COMMENT_NODE
Definition ast_nodes.h:40
@ AST_HTML_ATTRIBUTE_VALUE_NODE
Definition ast_nodes.h:33
@ AST_CDATA_NODE
Definition ast_nodes.h:43
@ AST_HTML_ELEMENT_NODE
Definition ast_nodes.h:31
@ AST_ERB_WHEN_NODE
Definition ast_nodes.h:50
@ AST_RUBY_HTML_ATTRIBUTES_SPLAT_NODE
Definition ast_nodes.h:37
@ AST_ERB_BEGIN_NODE
Definition ast_nodes.h:58
@ AST_ERB_WHILE_NODE
Definition ast_nodes.h:53
@ AST_DOCUMENT_NODE
Definition ast_nodes.h:24
@ AST_ERB_IF_NODE
Definition ast_nodes.h:48
@ AST_ERB_FOR_NODE
Definition ast_nodes.h:55
@ AST_HTML_OPEN_TAG_NODE
Definition ast_nodes.h:26
@ AST_HTML_OMITTED_CLOSE_TAG_NODE
Definition ast_nodes.h:29
@ AST_HTML_DOCTYPE_NODE
Definition ast_nodes.h:41
@ AST_HTML_ATTRIBUTE_NODE
Definition ast_nodes.h:35
@ AST_HTML_TEXT_NODE
Definition ast_nodes.h:39
@ AST_ERB_UNLESS_NODE
Definition ast_nodes.h:59
@ AST_ERB_ENSURE_NODE
Definition ast_nodes.h:57
@ AST_LITERAL_NODE
Definition ast_nodes.h:25
@ AST_WHITESPACE_NODE
Definition ast_nodes.h:44
@ AST_ERB_CASE_NODE
Definition ast_nodes.h:51
@ AST_ERB_RENDER_NODE
Definition ast_nodes.h:61
@ AST_ERB_CONTENT_NODE
Definition ast_nodes.h:45
@ AST_ERB_ELSE_NODE
Definition ast_nodes.h:47
@ AST_HTML_VIRTUAL_CLOSE_TAG_NODE
Definition ast_nodes.h:30
@ AST_HTML_CONDITIONAL_ELEMENT_NODE
Definition ast_nodes.h:32
@ AST_ERB_CASE_MATCH_NODE
Definition ast_nodes.h:52
@ AST_RUBY_RENDER_LOCAL_NODE
Definition ast_nodes.h:60
@ AST_ERB_RESCUE_NODE
Definition ast_nodes.h:56
@ AST_ERB_YIELD_NODE
Definition ast_nodes.h:62
@ AST_HTML_CONDITIONAL_OPEN_TAG_NODE
Definition ast_nodes.h:27
@ AST_XML_DECLARATION_NODE
Definition ast_nodes.h:42
@ AST_HTML_ATTRIBUTE_NAME_NODE
Definition ast_nodes.h:34
@ AST_HTML_CLOSE_TAG_NODE
Definition ast_nodes.h:28
AST_ERB_WHEN_NODE_T * ast_erb_when_node_init(token_T *tag_opening, token_T *content, token_T *tag_closing, location_T *then_keyword, hb_array_T *statements, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:396
AST_HTML_COMMENT_NODE_T * ast_html_comment_node_init(token_T *comment_start, hb_array_T *children, token_T *comment_end, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:245
struct AST_ERB_CASE_NODE_STRUCT AST_ERB_CASE_NODE_T
struct AST_XML_DECLARATION_NODE_STRUCT AST_XML_DECLARATION_NODE_T
AST_ERB_RESCUE_NODE_T * ast_erb_rescue_node_init(token_T *tag_opening, token_T *content, token_T *tag_closing, hb_array_T *statements, struct AST_ERB_RESCUE_NODE_STRUCT *subsequent, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:501
AST_ERB_END_NODE_T * ast_erb_end_node_init(token_T *tag_opening, token_T *content, token_T *tag_closing, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:331
struct AST_RUBY_RENDER_LOCAL_NODE_STRUCT AST_RUBY_RENDER_LOCAL_NODE_T
AST_ERB_YIELD_NODE_T * ast_erb_yield_node_init(token_T *tag_opening, token_T *content, token_T *tag_closing, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:618
AST_HTML_OPEN_TAG_NODE_T * ast_html_open_tag_node_init(token_T *tag_opening, token_T *tag_name, token_T *tag_closing, hb_array_T *children, bool is_void, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:46
struct AST_HTML_OPEN_TAG_NODE_STRUCT AST_HTML_OPEN_TAG_NODE_T
struct AST_HTML_VIRTUAL_CLOSE_TAG_NODE_STRUCT AST_HTML_VIRTUAL_CLOSE_TAG_NODE_T
AST_ERB_BLOCK_NODE_T * ast_erb_block_node_init(token_T *tag_opening, token_T *content, token_T *tag_closing, herb_prism_node_T prism_node, hb_array_T *body, struct AST_ERB_END_NODE_STRUCT *end_node, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:379
AST_ERB_IF_NODE_T * ast_erb_if_node_init(token_T *tag_opening, token_T *content, token_T *tag_closing, location_T *then_keyword, herb_prism_node_T prism_node, hb_array_T *statements, AST_NODE_T *subsequent, struct AST_ERB_END_NODE_STRUCT *end_node, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:360
AST_ERB_CASE_NODE_T * ast_erb_case_node_init(token_T *tag_opening, token_T *content, token_T *tag_closing, hb_array_T *children, herb_prism_node_T prism_node, hb_array_T *conditions, struct AST_ERB_ELSE_NODE_STRUCT *else_clause, struct AST_ERB_END_NODE_STRUCT *end_node, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:412
struct AST_HTML_CLOSE_TAG_NODE_STRUCT AST_HTML_CLOSE_TAG_NODE_T
hb_string_T ast_node_human_type(AST_NODE_T *node)
Definition ast_nodes.c:695
struct AST_ERB_OPEN_TAG_NODE_STRUCT AST_ERB_OPEN_TAG_NODE_T
struct AST_ERB_CONTENT_NODE_STRUCT AST_ERB_CONTENT_NODE_T
struct AST_ERB_RENDER_NODE_STRUCT AST_ERB_RENDER_NODE_T
AST_HTML_VIRTUAL_CLOSE_TAG_NODE_T * ast_html_virtual_close_tag_node_init(token_T *tag_name, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:103
AST_HTML_ATTRIBUTE_VALUE_NODE_T * ast_html_attribute_value_node_init(token_T *open_quote, hb_array_T *children, token_T *close_quote, bool quoted, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:151
AST_RUBY_HTML_ATTRIBUTES_SPLAT_NODE_T * ast_ruby_html_attributes_splat_node_init(hb_string_T content, hb_string_T prefix, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:204
struct AST_RUBY_HTML_ATTRIBUTES_SPLAT_NODE_STRUCT AST_RUBY_HTML_ATTRIBUTES_SPLAT_NODE_T
AST_ERB_CONTENT_NODE_T * ast_erb_content_node_init(token_T *tag_opening, token_T *content, token_T *tag_closing, analyzed_ruby_T *analyzed_ruby, bool parsed, bool valid, herb_prism_node_T prism_node, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:313
AST_HTML_ELEMENT_NODE_T * ast_html_element_node_init(AST_NODE_T *open_tag, token_T *tag_name, hb_array_T *body, AST_NODE_T *close_tag, bool is_void, hb_string_T element_source, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:115
AST_LITERAL_NODE_T * ast_literal_node_init(hb_string_T content, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:34
hb_string_T ast_node_type_to_string(AST_NODE_T *node)
Definition ast_nodes.c:648
AST_RUBY_RENDER_LOCAL_NODE_T * ast_ruby_render_local_node_init(token_T *name, struct AST_RUBY_LITERAL_NODE_STRUCT *value, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:571
struct AST_HTML_ATTRIBUTE_NODE_STRUCT AST_HTML_ATTRIBUTE_NODE_T
struct AST_HTML_OMITTED_CLOSE_TAG_NODE_STRUCT AST_HTML_OMITTED_CLOSE_TAG_NODE_T
AST_HTML_OMITTED_CLOSE_TAG_NODE_T * ast_html_omitted_close_tag_node_init(token_T *tag_name, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:91
AST_HTML_CONDITIONAL_OPEN_TAG_NODE_T * ast_html_conditional_open_tag_node_init(AST_NODE_T *conditional, token_T *tag_name, bool is_void, position_T start_position, position_T end_position, hb_array_T *errors, hb_allocator_T *allocator)
Definition ast_nodes.c:62
struct AST_LITERAL_NODE_STRUCT AST_LITERAL_NODE_T
struct AST_ERB_RESCUE_NODE_STRUCT AST_ERB_RESCUE_NODE_T
struct AST_HTML_COMMENT_NODE_STRUCT AST_HTML_COMMENT_NODE_T
struct AST_ERB_IN_NODE_STRUCT AST_ERB_IN_NODE_T
struct AST_HTML_ATTRIBUTE_VALUE_NODE_STRUCT AST_HTML_ATTRIBUTE_VALUE_NODE_T
struct AST_ERB_ELSE_NODE_STRUCT AST_ERB_ELSE_NODE_T
struct AST_HTML_ELEMENT_NODE_STRUCT AST_HTML_ELEMENT_NODE_T
struct AST_RUBY_LITERAL_NODE_STRUCT AST_RUBY_LITERAL_NODE_T
Definition ast_nodes.h:208
token_T * tag_opening
Definition ast_nodes.h:210
AST_NODE_T base
Definition ast_nodes.h:209
token_T * tag_closing
Definition ast_nodes.h:212
hb_array_T * children
Definition ast_nodes.h:211
Definition ast_nodes.h:74
hb_array_T * children
Definition ast_nodes.h:76
herb_prism_context_T * prism_context
Definition ast_nodes.h:77
AST_NODE_T base
Definition ast_nodes.h:75
herb_prism_node_T prism_node
Definition ast_nodes.h:78
Definition ast_nodes.h:348
struct AST_ERB_ELSE_NODE_STRUCT * else_clause
Definition ast_nodes.h:356
hb_array_T * statements
Definition ast_nodes.h:354
token_T * tag_closing
Definition ast_nodes.h:352
token_T * content
Definition ast_nodes.h:351
struct AST_ERB_END_NODE_STRUCT * end_node
Definition ast_nodes.h:358
AST_NODE_T base
Definition ast_nodes.h:349
token_T * tag_opening
Definition ast_nodes.h:350
herb_prism_node_T prism_node
Definition ast_nodes.h:353
struct AST_ERB_RESCUE_NODE_STRUCT * rescue_clause
Definition ast_nodes.h:355
struct AST_ERB_ENSURE_NODE_STRUCT * ensure_clause
Definition ast_nodes.h:357
Definition ast_nodes.h:258
AST_NODE_T base
Definition ast_nodes.h:259
herb_prism_node_T prism_node
Definition ast_nodes.h:263
token_T * tag_opening
Definition ast_nodes.h:260
token_T * tag_closing
Definition ast_nodes.h:262
token_T * content
Definition ast_nodes.h:261
struct AST_ERB_END_NODE_STRUCT * end_node
Definition ast_nodes.h:265
hb_array_T * body
Definition ast_nodes.h:264
Definition ast_nodes.h:289
hb_array_T * children
Definition ast_nodes.h:294
struct AST_ERB_ELSE_NODE_STRUCT * else_clause
Definition ast_nodes.h:297
token_T * tag_opening
Definition ast_nodes.h:291
AST_NODE_T base
Definition ast_nodes.h:290
hb_array_T * conditions
Definition ast_nodes.h:296
token_T * tag_closing
Definition ast_nodes.h:293
token_T * content
Definition ast_nodes.h:292
herb_prism_node_T prism_node
Definition ast_nodes.h:295
struct AST_ERB_END_NODE_STRUCT * end_node
Definition ast_nodes.h:298
Definition ast_nodes.h:277
struct AST_ERB_END_NODE_STRUCT * end_node
Definition ast_nodes.h:286
token_T * content
Definition ast_nodes.h:280
hb_array_T * children
Definition ast_nodes.h:282
hb_array_T * conditions
Definition ast_nodes.h:284
AST_NODE_T base
Definition ast_nodes.h:278
token_T * tag_closing
Definition ast_nodes.h:281
struct AST_ERB_ELSE_NODE_STRUCT * else_clause
Definition ast_nodes.h:285
herb_prism_node_T prism_node
Definition ast_nodes.h:283
token_T * tag_opening
Definition ast_nodes.h:279
Definition ast_nodes.h:220
analyzed_ruby_T * analyzed_ruby
Definition ast_nodes.h:225
AST_NODE_T base
Definition ast_nodes.h:221
bool valid
Definition ast_nodes.h:227
bool parsed
Definition ast_nodes.h:226
token_T * tag_closing
Definition ast_nodes.h:224
token_T * tag_opening
Definition ast_nodes.h:222
herb_prism_node_T prism_node
Definition ast_nodes.h:228
token_T * content
Definition ast_nodes.h:223
Definition ast_nodes.h:238
token_T * tag_opening
Definition ast_nodes.h:240
token_T * tag_closing
Definition ast_nodes.h:242
AST_NODE_T base
Definition ast_nodes.h:239
hb_array_T * statements
Definition ast_nodes.h:243
token_T * content
Definition ast_nodes.h:241
Definition ast_nodes.h:231
token_T * tag_closing
Definition ast_nodes.h:235
token_T * tag_opening
Definition ast_nodes.h:233
AST_NODE_T base
Definition ast_nodes.h:232
token_T * content
Definition ast_nodes.h:234
Definition ast_nodes.h:340
hb_array_T * statements
Definition ast_nodes.h:345
token_T * tag_closing
Definition ast_nodes.h:344
AST_NODE_T base
Definition ast_nodes.h:341
token_T * tag_opening
Definition ast_nodes.h:342
token_T * content
Definition ast_nodes.h:343
Definition ast_nodes.h:321
hb_array_T * statements
Definition ast_nodes.h:327
token_T * tag_opening
Definition ast_nodes.h:323
token_T * tag_closing
Definition ast_nodes.h:325
struct AST_ERB_END_NODE_STRUCT * end_node
Definition ast_nodes.h:328
token_T * content
Definition ast_nodes.h:324
AST_NODE_T base
Definition ast_nodes.h:322
herb_prism_node_T prism_node
Definition ast_nodes.h:326
Definition ast_nodes.h:246
herb_prism_node_T prism_node
Definition ast_nodes.h:252
AST_NODE_T base
Definition ast_nodes.h:247
AST_NODE_T * subsequent
Definition ast_nodes.h:254
location_T * then_keyword
Definition ast_nodes.h:251
token_T * tag_opening
Definition ast_nodes.h:248
hb_array_T * statements
Definition ast_nodes.h:253
token_T * content
Definition ast_nodes.h:249
token_T * tag_closing
Definition ast_nodes.h:250
struct AST_ERB_END_NODE_STRUCT * end_node
Definition ast_nodes.h:255
Definition ast_nodes.h:413
location_T * then_keyword
Definition ast_nodes.h:418
token_T * tag_opening
Definition ast_nodes.h:415
hb_array_T * statements
Definition ast_nodes.h:419
token_T * tag_closing
Definition ast_nodes.h:417
AST_NODE_T base
Definition ast_nodes.h:414
token_T * content
Definition ast_nodes.h:416
Definition ast_nodes.h:173
token_T * tag_closing
Definition ast_nodes.h:177
token_T * tag_opening
Definition ast_nodes.h:175
AST_NODE_T base
Definition ast_nodes.h:174
hb_array_T * children
Definition ast_nodes.h:179
token_T * content
Definition ast_nodes.h:176
token_T * tag_name
Definition ast_nodes.h:178
Definition ast_nodes.h:379
hb_array_T * locals
Definition ast_nodes.h:403
token_T * content_type
Definition ast_nodes.h:402
token_T * object
Definition ast_nodes.h:396
token_T * file
Definition ast_nodes.h:389
token_T * plain
Definition ast_nodes.h:392
token_T * tag_opening
Definition ast_nodes.h:381
token_T * layout
Definition ast_nodes.h:388
token_T * renderable
Definition ast_nodes.h:394
token_T * html
Definition ast_nodes.h:393
token_T * inline_template
Definition ast_nodes.h:390
token_T * handlers
Definition ast_nodes.h:401
token_T * collection
Definition ast_nodes.h:395
token_T * partial
Definition ast_nodes.h:386
token_T * spacer_template
Definition ast_nodes.h:398
token_T * formats
Definition ast_nodes.h:399
token_T * as_name
Definition ast_nodes.h:397
token_T * body
Definition ast_nodes.h:391
analyzed_ruby_T * analyzed_ruby
Definition ast_nodes.h:384
token_T * tag_closing
Definition ast_nodes.h:383
token_T * template_path
Definition ast_nodes.h:387
token_T * variants
Definition ast_nodes.h:400
token_T * content
Definition ast_nodes.h:382
AST_NODE_T base
Definition ast_nodes.h:380
herb_prism_node_T prism_node
Definition ast_nodes.h:385
Definition ast_nodes.h:331
token_T * tag_closing
Definition ast_nodes.h:335
AST_NODE_T base
Definition ast_nodes.h:332
hb_array_T * statements
Definition ast_nodes.h:336
token_T * tag_opening
Definition ast_nodes.h:333
token_T * content
Definition ast_nodes.h:334
struct AST_ERB_RESCUE_NODE_STRUCT * subsequent
Definition ast_nodes.h:337
Definition ast_nodes.h:361
token_T * content
Definition ast_nodes.h:364
herb_prism_node_T prism_node
Definition ast_nodes.h:367
AST_NODE_T base
Definition ast_nodes.h:362
struct AST_ERB_END_NODE_STRUCT * end_node
Definition ast_nodes.h:370
location_T * then_keyword
Definition ast_nodes.h:366
struct AST_ERB_ELSE_NODE_STRUCT * else_clause
Definition ast_nodes.h:369
token_T * tag_closing
Definition ast_nodes.h:365
hb_array_T * statements
Definition ast_nodes.h:368
token_T * tag_opening
Definition ast_nodes.h:363
Definition ast_nodes.h:311
AST_NODE_T base
Definition ast_nodes.h:312
token_T * content
Definition ast_nodes.h:314
token_T * tag_closing
Definition ast_nodes.h:315
hb_array_T * statements
Definition ast_nodes.h:317
struct AST_ERB_END_NODE_STRUCT * end_node
Definition ast_nodes.h:318
herb_prism_node_T prism_node
Definition ast_nodes.h:316
token_T * tag_opening
Definition ast_nodes.h:313
Definition ast_nodes.h:268
token_T * content
Definition ast_nodes.h:271
token_T * tag_closing
Definition ast_nodes.h:272
location_T * then_keyword
Definition ast_nodes.h:273
token_T * tag_opening
Definition ast_nodes.h:270
hb_array_T * statements
Definition ast_nodes.h:274
AST_NODE_T base
Definition ast_nodes.h:269
Definition ast_nodes.h:301
token_T * content
Definition ast_nodes.h:304
token_T * tag_opening
Definition ast_nodes.h:303
hb_array_T * statements
Definition ast_nodes.h:307
herb_prism_node_T prism_node
Definition ast_nodes.h:306
struct AST_ERB_END_NODE_STRUCT * end_node
Definition ast_nodes.h:308
AST_NODE_T base
Definition ast_nodes.h:302
token_T * tag_closing
Definition ast_nodes.h:305
Definition ast_nodes.h:406
token_T * tag_closing
Definition ast_nodes.h:410
token_T * content
Definition ast_nodes.h:409
token_T * tag_opening
Definition ast_nodes.h:408
AST_NODE_T base
Definition ast_nodes.h:407
Definition ast_nodes.h:150
AST_NODE_T base
Definition ast_nodes.h:151
hb_array_T * children
Definition ast_nodes.h:152
Definition ast_nodes.h:155
struct AST_HTML_ATTRIBUTE_NAME_NODE_STRUCT * name
Definition ast_nodes.h:157
struct AST_HTML_ATTRIBUTE_VALUE_NODE_STRUCT * value
Definition ast_nodes.h:159
AST_NODE_T base
Definition ast_nodes.h:156
token_T * equals
Definition ast_nodes.h:158
Definition ast_nodes.h:142
hb_array_T * children
Definition ast_nodes.h:145
token_T * close_quote
Definition ast_nodes.h:146
bool quoted
Definition ast_nodes.h:147
AST_NODE_T base
Definition ast_nodes.h:143
token_T * open_quote
Definition ast_nodes.h:144
Definition ast_nodes.h:102
token_T * tag_name
Definition ast_nodes.h:105
AST_NODE_T base
Definition ast_nodes.h:103
token_T * tag_opening
Definition ast_nodes.h:104
token_T * tag_closing
Definition ast_nodes.h:107
hb_array_T * children
Definition ast_nodes.h:106
Definition ast_nodes.h:187
token_T * comment_start
Definition ast_nodes.h:189
AST_NODE_T base
Definition ast_nodes.h:188
token_T * comment_end
Definition ast_nodes.h:191
hb_array_T * children
Definition ast_nodes.h:190
hb_array_T * body
Definition ast_nodes.h:135
AST_NODE_T * close_tag
Definition ast_nodes.h:136
AST_NODE_T * open_conditional
Definition ast_nodes.h:133
hb_string_T element_source
Definition ast_nodes.h:139
AST_NODE_T base
Definition ast_nodes.h:131
AST_NODE_T * close_conditional
Definition ast_nodes.h:137
struct AST_HTML_OPEN_TAG_NODE_STRUCT * open_tag
Definition ast_nodes.h:134
hb_string_T condition
Definition ast_nodes.h:132
token_T * tag_name
Definition ast_nodes.h:138
AST_NODE_T * conditional
Definition ast_nodes.h:97
token_T * tag_name
Definition ast_nodes.h:98
AST_NODE_T base
Definition ast_nodes.h:96
bool is_void
Definition ast_nodes.h:99
Definition ast_nodes.h:194
hb_array_T * children
Definition ast_nodes.h:197
token_T * tag_opening
Definition ast_nodes.h:196
AST_NODE_T base
Definition ast_nodes.h:195
token_T * tag_closing
Definition ast_nodes.h:198
Definition ast_nodes.h:120
AST_NODE_T base
Definition ast_nodes.h:121
hb_string_T element_source
Definition ast_nodes.h:127
hb_array_T * body
Definition ast_nodes.h:124
bool is_void
Definition ast_nodes.h:126
token_T * tag_name
Definition ast_nodes.h:123
AST_NODE_T * close_tag
Definition ast_nodes.h:125
AST_NODE_T * open_tag
Definition ast_nodes.h:122
Definition ast_nodes.h:110
AST_NODE_T base
Definition ast_nodes.h:111
token_T * tag_name
Definition ast_nodes.h:112
Definition ast_nodes.h:86
hb_array_T * children
Definition ast_nodes.h:91
token_T * tag_name
Definition ast_nodes.h:89
bool is_void
Definition ast_nodes.h:92
token_T * tag_closing
Definition ast_nodes.h:90
AST_NODE_T base
Definition ast_nodes.h:87
token_T * tag_opening
Definition ast_nodes.h:88
Definition ast_nodes.h:182
hb_string_T content
Definition ast_nodes.h:184
AST_NODE_T base
Definition ast_nodes.h:183
Definition ast_nodes.h:115
token_T * tag_name
Definition ast_nodes.h:117
AST_NODE_T base
Definition ast_nodes.h:116
Definition ast_nodes.h:81
AST_NODE_T base
Definition ast_nodes.h:82
hb_string_T content
Definition ast_nodes.h:83
Definition ast_nodes.h:66
hb_array_T * errors
Definition ast_nodes.h:70
ast_node_type_T type
Definition ast_nodes.h:67
location_T location
Definition ast_nodes.h:68
hb_string_T prefix
Definition ast_nodes.h:170
AST_NODE_T base
Definition ast_nodes.h:168
hb_string_T content
Definition ast_nodes.h:169
Definition ast_nodes.h:162
AST_NODE_T base
Definition ast_nodes.h:163
hb_string_T content
Definition ast_nodes.h:164
Definition ast_nodes.h:373
struct AST_RUBY_LITERAL_NODE_STRUCT * value
Definition ast_nodes.h:376
AST_NODE_T base
Definition ast_nodes.h:374
token_T * name
Definition ast_nodes.h:375
Definition ast_nodes.h:215
AST_NODE_T base
Definition ast_nodes.h:216
token_T * value
Definition ast_nodes.h:217
Definition ast_nodes.h:201
hb_array_T * children
Definition ast_nodes.h:204
token_T * tag_opening
Definition ast_nodes.h:203
token_T * tag_closing
Definition ast_nodes.h:205
AST_NODE_T base
Definition ast_nodes.h:202
Definition location.h:10
Definition position.h:8
Definition token_struct.h:58
Definition prism_context.h:9
Definition herb_prism_node.h:6