yarp 0.12.0 → 0.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (115) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +29 -8
  3. data/CONTRIBUTING.md +2 -2
  4. data/Makefile +5 -5
  5. data/README.md +11 -12
  6. data/config.yml +6 -2
  7. data/docs/build_system.md +21 -21
  8. data/docs/building.md +4 -4
  9. data/docs/configuration.md +25 -21
  10. data/docs/design.md +2 -2
  11. data/docs/encoding.md +17 -17
  12. data/docs/fuzzing.md +4 -4
  13. data/docs/heredocs.md +3 -3
  14. data/docs/mapping.md +94 -94
  15. data/docs/ripper.md +4 -4
  16. data/docs/ruby_api.md +11 -11
  17. data/docs/serialization.md +17 -16
  18. data/docs/testing.md +6 -6
  19. data/ext/prism/api_node.c +4725 -0
  20. data/ext/{yarp → prism}/api_pack.c +82 -82
  21. data/ext/{yarp → prism}/extconf.rb +13 -13
  22. data/ext/{yarp → prism}/extension.c +175 -168
  23. data/ext/prism/extension.h +18 -0
  24. data/include/prism/ast.h +1932 -0
  25. data/include/prism/defines.h +45 -0
  26. data/include/prism/diagnostic.h +231 -0
  27. data/include/{yarp/enc/yp_encoding.h → prism/enc/pm_encoding.h} +40 -40
  28. data/include/prism/node.h +41 -0
  29. data/include/prism/pack.h +141 -0
  30. data/include/{yarp → prism}/parser.h +143 -142
  31. data/include/prism/regexp.h +19 -0
  32. data/include/prism/unescape.h +48 -0
  33. data/include/prism/util/pm_buffer.h +51 -0
  34. data/include/{yarp/util/yp_char.h → prism/util/pm_char.h} +20 -20
  35. data/include/{yarp/util/yp_constant_pool.h → prism/util/pm_constant_pool.h} +26 -22
  36. data/include/{yarp/util/yp_list.h → prism/util/pm_list.h} +21 -21
  37. data/include/prism/util/pm_memchr.h +14 -0
  38. data/include/{yarp/util/yp_newline_list.h → prism/util/pm_newline_list.h} +11 -11
  39. data/include/prism/util/pm_state_stack.h +24 -0
  40. data/include/{yarp/util/yp_string.h → prism/util/pm_string.h} +20 -20
  41. data/include/prism/util/pm_string_list.h +25 -0
  42. data/include/{yarp/util/yp_strpbrk.h → prism/util/pm_strpbrk.h} +7 -7
  43. data/include/prism/version.h +4 -0
  44. data/include/prism.h +82 -0
  45. data/lib/prism/compiler.rb +465 -0
  46. data/lib/prism/debug.rb +157 -0
  47. data/lib/{yarp/desugar_visitor.rb → prism/desugar_compiler.rb} +4 -2
  48. data/lib/prism/dispatcher.rb +2051 -0
  49. data/lib/prism/dsl.rb +750 -0
  50. data/lib/{yarp → prism}/ffi.rb +66 -67
  51. data/lib/{yarp → prism}/lex_compat.rb +40 -43
  52. data/lib/{yarp/mutation_visitor.rb → prism/mutation_compiler.rb} +3 -3
  53. data/lib/{yarp → prism}/node.rb +2012 -2593
  54. data/lib/prism/node_ext.rb +55 -0
  55. data/lib/prism/node_inspector.rb +68 -0
  56. data/lib/{yarp → prism}/pack.rb +1 -1
  57. data/lib/{yarp → prism}/parse_result/comments.rb +1 -1
  58. data/lib/{yarp → prism}/parse_result/newlines.rb +1 -1
  59. data/lib/prism/parse_result.rb +266 -0
  60. data/lib/{yarp → prism}/pattern.rb +14 -14
  61. data/lib/{yarp → prism}/ripper_compat.rb +5 -5
  62. data/lib/{yarp → prism}/serialize.rb +12 -7
  63. data/lib/prism/visitor.rb +470 -0
  64. data/lib/prism.rb +64 -0
  65. data/lib/yarp.rb +2 -614
  66. data/src/diagnostic.c +213 -208
  67. data/src/enc/pm_big5.c +52 -0
  68. data/src/enc/pm_euc_jp.c +58 -0
  69. data/src/enc/{yp_gbk.c → pm_gbk.c} +16 -16
  70. data/src/enc/pm_shift_jis.c +56 -0
  71. data/src/enc/{yp_tables.c → pm_tables.c} +69 -69
  72. data/src/enc/{yp_unicode.c → pm_unicode.c} +40 -40
  73. data/src/enc/pm_windows_31j.c +56 -0
  74. data/src/node.c +1293 -1233
  75. data/src/pack.c +247 -247
  76. data/src/prettyprint.c +1479 -1479
  77. data/src/{yarp.c → prism.c} +5205 -5083
  78. data/src/regexp.c +132 -132
  79. data/src/serialize.c +1121 -1121
  80. data/src/token_type.c +169 -167
  81. data/src/unescape.c +106 -87
  82. data/src/util/pm_buffer.c +103 -0
  83. data/src/util/{yp_char.c → pm_char.c} +72 -72
  84. data/src/util/{yp_constant_pool.c → pm_constant_pool.c} +85 -64
  85. data/src/util/{yp_list.c → pm_list.c} +10 -10
  86. data/src/util/{yp_memchr.c → pm_memchr.c} +6 -4
  87. data/src/util/{yp_newline_list.c → pm_newline_list.c} +21 -21
  88. data/src/util/{yp_state_stack.c → pm_state_stack.c} +4 -4
  89. data/src/util/{yp_string.c → pm_string.c} +38 -38
  90. data/src/util/pm_string_list.c +29 -0
  91. data/src/util/{yp_strncasecmp.c → pm_strncasecmp.c} +1 -1
  92. data/src/util/{yp_strpbrk.c → pm_strpbrk.c} +8 -8
  93. data/yarp.gemspec +68 -59
  94. metadata +70 -61
  95. data/ext/yarp/api_node.c +0 -4728
  96. data/ext/yarp/extension.h +0 -18
  97. data/include/yarp/ast.h +0 -1929
  98. data/include/yarp/defines.h +0 -45
  99. data/include/yarp/diagnostic.h +0 -226
  100. data/include/yarp/node.h +0 -42
  101. data/include/yarp/pack.h +0 -141
  102. data/include/yarp/regexp.h +0 -19
  103. data/include/yarp/unescape.h +0 -44
  104. data/include/yarp/util/yp_buffer.h +0 -51
  105. data/include/yarp/util/yp_memchr.h +0 -14
  106. data/include/yarp/util/yp_state_stack.h +0 -24
  107. data/include/yarp/util/yp_string_list.h +0 -25
  108. data/include/yarp/version.h +0 -4
  109. data/include/yarp.h +0 -82
  110. data/src/enc/yp_big5.c +0 -52
  111. data/src/enc/yp_euc_jp.c +0 -58
  112. data/src/enc/yp_shift_jis.c +0 -56
  113. data/src/enc/yp_windows_31j.c +0 -56
  114. data/src/util/yp_buffer.c +0 -101
  115. data/src/util/yp_string_list.c +0 -29
data/src/serialize.c CHANGED
@@ -5,1721 +5,1721 @@
5
5
  /* if you are looking to modify the */
6
6
  /* template */
7
7
  /******************************************************************************/
8
- #include "yarp.h"
8
+ #include "prism.h"
9
9
 
10
10
  #include <stdio.h>
11
11
 
12
12
  static inline uint32_t
13
- yp_ptrdifft_to_u32(ptrdiff_t value) {
13
+ pm_ptrdifft_to_u32(ptrdiff_t value) {
14
14
  assert(value >= 0 && ((unsigned long) value) < UINT32_MAX);
15
15
  return (uint32_t) value;
16
16
  }
17
17
 
18
18
  static inline uint32_t
19
- yp_sizet_to_u32(size_t value) {
19
+ pm_sizet_to_u32(size_t value) {
20
20
  assert(value < UINT32_MAX);
21
21
  return (uint32_t) value;
22
22
  }
23
23
 
24
24
  static void
25
- yp_serialize_location(yp_parser_t *parser, yp_location_t *location, yp_buffer_t *buffer) {
25
+ pm_serialize_location(pm_parser_t *parser, pm_location_t *location, pm_buffer_t *buffer) {
26
26
  assert(location->start);
27
27
  assert(location->end);
28
28
  assert(location->start <= location->end);
29
29
 
30
- yp_buffer_append_u32(buffer, yp_ptrdifft_to_u32(location->start - parser->start));
31
- yp_buffer_append_u32(buffer, yp_ptrdifft_to_u32(location->end - location->start));
30
+ pm_buffer_append_u32(buffer, pm_ptrdifft_to_u32(location->start - parser->start));
31
+ pm_buffer_append_u32(buffer, pm_ptrdifft_to_u32(location->end - location->start));
32
32
  }
33
33
 
34
34
  static void
35
- yp_serialize_string(yp_parser_t *parser, yp_string_t *string, yp_buffer_t *buffer) {
35
+ pm_serialize_string(pm_parser_t *parser, pm_string_t *string, pm_buffer_t *buffer) {
36
36
  switch (string->type) {
37
- case YP_STRING_SHARED: {
38
- yp_buffer_append_u8(buffer, 1);
39
- yp_buffer_append_u32(buffer, yp_ptrdifft_to_u32(yp_string_source(string) - parser->start));
40
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(yp_string_length(string)));
37
+ case PM_STRING_SHARED: {
38
+ pm_buffer_append_u8(buffer, 1);
39
+ pm_buffer_append_u32(buffer, pm_ptrdifft_to_u32(pm_string_source(string) - parser->start));
40
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(pm_string_length(string)));
41
41
  break;
42
42
  }
43
- case YP_STRING_OWNED:
44
- case YP_STRING_CONSTANT: {
45
- uint32_t length = yp_sizet_to_u32(yp_string_length(string));
46
- yp_buffer_append_u8(buffer, 2);
47
- yp_buffer_append_u32(buffer, length);
48
- yp_buffer_append_bytes(buffer, yp_string_source(string), length);
43
+ case PM_STRING_OWNED:
44
+ case PM_STRING_CONSTANT: {
45
+ uint32_t length = pm_sizet_to_u32(pm_string_length(string));
46
+ pm_buffer_append_u8(buffer, 2);
47
+ pm_buffer_append_u32(buffer, length);
48
+ pm_buffer_append_bytes(buffer, pm_string_source(string), length);
49
49
  break;
50
50
  }
51
- case YP_STRING_MAPPED:
51
+ case PM_STRING_MAPPED:
52
52
  assert(false && "Cannot serialize mapped strings.");
53
53
  break;
54
54
  }
55
55
  }
56
56
 
57
57
  void
58
- yp_serialize_node(yp_parser_t *parser, yp_node_t *node, yp_buffer_t *buffer) {
59
- yp_buffer_append_u8(buffer, (uint8_t) YP_NODE_TYPE(node));
58
+ pm_serialize_node(pm_parser_t *parser, pm_node_t *node, pm_buffer_t *buffer) {
59
+ pm_buffer_append_u8(buffer, (uint8_t) PM_NODE_TYPE(node));
60
60
 
61
61
  size_t offset = buffer->length;
62
62
 
63
- yp_serialize_location(parser, &node->location, buffer);
63
+ pm_serialize_location(parser, &node->location, buffer);
64
64
 
65
- switch (YP_NODE_TYPE(node)) {
65
+ switch (PM_NODE_TYPE(node)) {
66
66
  // We do not need to serialize a ScopeNode ever as
67
67
  // it is not part of the AST
68
- case YP_SCOPE_NODE:
68
+ case PM_SCOPE_NODE:
69
69
  return;
70
- case YP_ALIAS_GLOBAL_VARIABLE_NODE: {
71
- yp_serialize_node(parser, (yp_node_t *)((yp_alias_global_variable_node_t *)node)->new_name, buffer);
72
- yp_serialize_node(parser, (yp_node_t *)((yp_alias_global_variable_node_t *)node)->old_name, buffer);
73
- yp_serialize_location(parser, &((yp_alias_global_variable_node_t *)node)->keyword_loc, buffer);
70
+ case PM_ALIAS_GLOBAL_VARIABLE_NODE: {
71
+ pm_serialize_node(parser, (pm_node_t *)((pm_alias_global_variable_node_t *)node)->new_name, buffer);
72
+ pm_serialize_node(parser, (pm_node_t *)((pm_alias_global_variable_node_t *)node)->old_name, buffer);
73
+ pm_serialize_location(parser, &((pm_alias_global_variable_node_t *)node)->keyword_loc, buffer);
74
74
  break;
75
75
  }
76
- case YP_ALIAS_METHOD_NODE: {
77
- yp_serialize_node(parser, (yp_node_t *)((yp_alias_method_node_t *)node)->new_name, buffer);
78
- yp_serialize_node(parser, (yp_node_t *)((yp_alias_method_node_t *)node)->old_name, buffer);
79
- yp_serialize_location(parser, &((yp_alias_method_node_t *)node)->keyword_loc, buffer);
76
+ case PM_ALIAS_METHOD_NODE: {
77
+ pm_serialize_node(parser, (pm_node_t *)((pm_alias_method_node_t *)node)->new_name, buffer);
78
+ pm_serialize_node(parser, (pm_node_t *)((pm_alias_method_node_t *)node)->old_name, buffer);
79
+ pm_serialize_location(parser, &((pm_alias_method_node_t *)node)->keyword_loc, buffer);
80
80
  break;
81
81
  }
82
- case YP_ALTERNATION_PATTERN_NODE: {
83
- yp_serialize_node(parser, (yp_node_t *)((yp_alternation_pattern_node_t *)node)->left, buffer);
84
- yp_serialize_node(parser, (yp_node_t *)((yp_alternation_pattern_node_t *)node)->right, buffer);
85
- yp_serialize_location(parser, &((yp_alternation_pattern_node_t *)node)->operator_loc, buffer);
82
+ case PM_ALTERNATION_PATTERN_NODE: {
83
+ pm_serialize_node(parser, (pm_node_t *)((pm_alternation_pattern_node_t *)node)->left, buffer);
84
+ pm_serialize_node(parser, (pm_node_t *)((pm_alternation_pattern_node_t *)node)->right, buffer);
85
+ pm_serialize_location(parser, &((pm_alternation_pattern_node_t *)node)->operator_loc, buffer);
86
86
  break;
87
87
  }
88
- case YP_AND_NODE: {
89
- yp_serialize_node(parser, (yp_node_t *)((yp_and_node_t *)node)->left, buffer);
90
- yp_serialize_node(parser, (yp_node_t *)((yp_and_node_t *)node)->right, buffer);
91
- yp_serialize_location(parser, &((yp_and_node_t *)node)->operator_loc, buffer);
88
+ case PM_AND_NODE: {
89
+ pm_serialize_node(parser, (pm_node_t *)((pm_and_node_t *)node)->left, buffer);
90
+ pm_serialize_node(parser, (pm_node_t *)((pm_and_node_t *)node)->right, buffer);
91
+ pm_serialize_location(parser, &((pm_and_node_t *)node)->operator_loc, buffer);
92
92
  break;
93
93
  }
94
- case YP_ARGUMENTS_NODE: {
95
- uint32_t arguments_size = yp_sizet_to_u32(((yp_arguments_node_t *)node)->arguments.size);
96
- yp_buffer_append_u32(buffer, arguments_size);
94
+ case PM_ARGUMENTS_NODE: {
95
+ uint32_t arguments_size = pm_sizet_to_u32(((pm_arguments_node_t *)node)->arguments.size);
96
+ pm_buffer_append_u32(buffer, arguments_size);
97
97
  for (uint32_t index = 0; index < arguments_size; index++) {
98
- yp_serialize_node(parser, (yp_node_t *) ((yp_arguments_node_t *)node)->arguments.nodes[index], buffer);
98
+ pm_serialize_node(parser, (pm_node_t *) ((pm_arguments_node_t *)node)->arguments.nodes[index], buffer);
99
99
  }
100
100
  break;
101
101
  }
102
- case YP_ARRAY_NODE: {
103
- uint32_t elements_size = yp_sizet_to_u32(((yp_array_node_t *)node)->elements.size);
104
- yp_buffer_append_u32(buffer, elements_size);
102
+ case PM_ARRAY_NODE: {
103
+ uint32_t elements_size = pm_sizet_to_u32(((pm_array_node_t *)node)->elements.size);
104
+ pm_buffer_append_u32(buffer, elements_size);
105
105
  for (uint32_t index = 0; index < elements_size; index++) {
106
- yp_serialize_node(parser, (yp_node_t *) ((yp_array_node_t *)node)->elements.nodes[index], buffer);
106
+ pm_serialize_node(parser, (pm_node_t *) ((pm_array_node_t *)node)->elements.nodes[index], buffer);
107
107
  }
108
- if (((yp_array_node_t *)node)->opening_loc.start == NULL) {
109
- yp_buffer_append_u8(buffer, 0);
108
+ if (((pm_array_node_t *)node)->opening_loc.start == NULL) {
109
+ pm_buffer_append_u8(buffer, 0);
110
110
  } else {
111
- yp_buffer_append_u8(buffer, 1);
112
- yp_serialize_location(parser, &((yp_array_node_t *)node)->opening_loc, buffer);
111
+ pm_buffer_append_u8(buffer, 1);
112
+ pm_serialize_location(parser, &((pm_array_node_t *)node)->opening_loc, buffer);
113
113
  }
114
- if (((yp_array_node_t *)node)->closing_loc.start == NULL) {
115
- yp_buffer_append_u8(buffer, 0);
114
+ if (((pm_array_node_t *)node)->closing_loc.start == NULL) {
115
+ pm_buffer_append_u8(buffer, 0);
116
116
  } else {
117
- yp_buffer_append_u8(buffer, 1);
118
- yp_serialize_location(parser, &((yp_array_node_t *)node)->closing_loc, buffer);
117
+ pm_buffer_append_u8(buffer, 1);
118
+ pm_serialize_location(parser, &((pm_array_node_t *)node)->closing_loc, buffer);
119
119
  }
120
120
  break;
121
121
  }
122
- case YP_ARRAY_PATTERN_NODE: {
123
- if (((yp_array_pattern_node_t *)node)->constant == NULL) {
124
- yp_buffer_append_u8(buffer, 0);
122
+ case PM_ARRAY_PATTERN_NODE: {
123
+ if (((pm_array_pattern_node_t *)node)->constant == NULL) {
124
+ pm_buffer_append_u8(buffer, 0);
125
125
  } else {
126
- yp_serialize_node(parser, (yp_node_t *)((yp_array_pattern_node_t *)node)->constant, buffer);
126
+ pm_serialize_node(parser, (pm_node_t *)((pm_array_pattern_node_t *)node)->constant, buffer);
127
127
  }
128
- uint32_t requireds_size = yp_sizet_to_u32(((yp_array_pattern_node_t *)node)->requireds.size);
129
- yp_buffer_append_u32(buffer, requireds_size);
128
+ uint32_t requireds_size = pm_sizet_to_u32(((pm_array_pattern_node_t *)node)->requireds.size);
129
+ pm_buffer_append_u32(buffer, requireds_size);
130
130
  for (uint32_t index = 0; index < requireds_size; index++) {
131
- yp_serialize_node(parser, (yp_node_t *) ((yp_array_pattern_node_t *)node)->requireds.nodes[index], buffer);
131
+ pm_serialize_node(parser, (pm_node_t *) ((pm_array_pattern_node_t *)node)->requireds.nodes[index], buffer);
132
132
  }
133
- if (((yp_array_pattern_node_t *)node)->rest == NULL) {
134
- yp_buffer_append_u8(buffer, 0);
133
+ if (((pm_array_pattern_node_t *)node)->rest == NULL) {
134
+ pm_buffer_append_u8(buffer, 0);
135
135
  } else {
136
- yp_serialize_node(parser, (yp_node_t *)((yp_array_pattern_node_t *)node)->rest, buffer);
136
+ pm_serialize_node(parser, (pm_node_t *)((pm_array_pattern_node_t *)node)->rest, buffer);
137
137
  }
138
- uint32_t posts_size = yp_sizet_to_u32(((yp_array_pattern_node_t *)node)->posts.size);
139
- yp_buffer_append_u32(buffer, posts_size);
138
+ uint32_t posts_size = pm_sizet_to_u32(((pm_array_pattern_node_t *)node)->posts.size);
139
+ pm_buffer_append_u32(buffer, posts_size);
140
140
  for (uint32_t index = 0; index < posts_size; index++) {
141
- yp_serialize_node(parser, (yp_node_t *) ((yp_array_pattern_node_t *)node)->posts.nodes[index], buffer);
141
+ pm_serialize_node(parser, (pm_node_t *) ((pm_array_pattern_node_t *)node)->posts.nodes[index], buffer);
142
142
  }
143
- if (((yp_array_pattern_node_t *)node)->opening_loc.start == NULL) {
144
- yp_buffer_append_u8(buffer, 0);
143
+ if (((pm_array_pattern_node_t *)node)->opening_loc.start == NULL) {
144
+ pm_buffer_append_u8(buffer, 0);
145
145
  } else {
146
- yp_buffer_append_u8(buffer, 1);
147
- yp_serialize_location(parser, &((yp_array_pattern_node_t *)node)->opening_loc, buffer);
146
+ pm_buffer_append_u8(buffer, 1);
147
+ pm_serialize_location(parser, &((pm_array_pattern_node_t *)node)->opening_loc, buffer);
148
148
  }
149
- if (((yp_array_pattern_node_t *)node)->closing_loc.start == NULL) {
150
- yp_buffer_append_u8(buffer, 0);
149
+ if (((pm_array_pattern_node_t *)node)->closing_loc.start == NULL) {
150
+ pm_buffer_append_u8(buffer, 0);
151
151
  } else {
152
- yp_buffer_append_u8(buffer, 1);
153
- yp_serialize_location(parser, &((yp_array_pattern_node_t *)node)->closing_loc, buffer);
152
+ pm_buffer_append_u8(buffer, 1);
153
+ pm_serialize_location(parser, &((pm_array_pattern_node_t *)node)->closing_loc, buffer);
154
154
  }
155
155
  break;
156
156
  }
157
- case YP_ASSOC_NODE: {
158
- yp_serialize_node(parser, (yp_node_t *)((yp_assoc_node_t *)node)->key, buffer);
159
- if (((yp_assoc_node_t *)node)->value == NULL) {
160
- yp_buffer_append_u8(buffer, 0);
157
+ case PM_ASSOC_NODE: {
158
+ pm_serialize_node(parser, (pm_node_t *)((pm_assoc_node_t *)node)->key, buffer);
159
+ if (((pm_assoc_node_t *)node)->value == NULL) {
160
+ pm_buffer_append_u8(buffer, 0);
161
161
  } else {
162
- yp_serialize_node(parser, (yp_node_t *)((yp_assoc_node_t *)node)->value, buffer);
162
+ pm_serialize_node(parser, (pm_node_t *)((pm_assoc_node_t *)node)->value, buffer);
163
163
  }
164
- if (((yp_assoc_node_t *)node)->operator_loc.start == NULL) {
165
- yp_buffer_append_u8(buffer, 0);
164
+ if (((pm_assoc_node_t *)node)->operator_loc.start == NULL) {
165
+ pm_buffer_append_u8(buffer, 0);
166
166
  } else {
167
- yp_buffer_append_u8(buffer, 1);
168
- yp_serialize_location(parser, &((yp_assoc_node_t *)node)->operator_loc, buffer);
167
+ pm_buffer_append_u8(buffer, 1);
168
+ pm_serialize_location(parser, &((pm_assoc_node_t *)node)->operator_loc, buffer);
169
169
  }
170
170
  break;
171
171
  }
172
- case YP_ASSOC_SPLAT_NODE: {
173
- if (((yp_assoc_splat_node_t *)node)->value == NULL) {
174
- yp_buffer_append_u8(buffer, 0);
172
+ case PM_ASSOC_SPLAT_NODE: {
173
+ if (((pm_assoc_splat_node_t *)node)->value == NULL) {
174
+ pm_buffer_append_u8(buffer, 0);
175
175
  } else {
176
- yp_serialize_node(parser, (yp_node_t *)((yp_assoc_splat_node_t *)node)->value, buffer);
176
+ pm_serialize_node(parser, (pm_node_t *)((pm_assoc_splat_node_t *)node)->value, buffer);
177
177
  }
178
- yp_serialize_location(parser, &((yp_assoc_splat_node_t *)node)->operator_loc, buffer);
178
+ pm_serialize_location(parser, &((pm_assoc_splat_node_t *)node)->operator_loc, buffer);
179
179
  break;
180
180
  }
181
- case YP_BACK_REFERENCE_READ_NODE: {
181
+ case PM_BACK_REFERENCE_READ_NODE: {
182
182
  break;
183
183
  }
184
- case YP_BEGIN_NODE: {
185
- if (((yp_begin_node_t *)node)->begin_keyword_loc.start == NULL) {
186
- yp_buffer_append_u8(buffer, 0);
184
+ case PM_BEGIN_NODE: {
185
+ if (((pm_begin_node_t *)node)->begin_keyword_loc.start == NULL) {
186
+ pm_buffer_append_u8(buffer, 0);
187
187
  } else {
188
- yp_buffer_append_u8(buffer, 1);
189
- yp_serialize_location(parser, &((yp_begin_node_t *)node)->begin_keyword_loc, buffer);
188
+ pm_buffer_append_u8(buffer, 1);
189
+ pm_serialize_location(parser, &((pm_begin_node_t *)node)->begin_keyword_loc, buffer);
190
190
  }
191
- if (((yp_begin_node_t *)node)->statements == NULL) {
192
- yp_buffer_append_u8(buffer, 0);
191
+ if (((pm_begin_node_t *)node)->statements == NULL) {
192
+ pm_buffer_append_u8(buffer, 0);
193
193
  } else {
194
- yp_serialize_node(parser, (yp_node_t *)((yp_begin_node_t *)node)->statements, buffer);
194
+ pm_serialize_node(parser, (pm_node_t *)((pm_begin_node_t *)node)->statements, buffer);
195
195
  }
196
- if (((yp_begin_node_t *)node)->rescue_clause == NULL) {
197
- yp_buffer_append_u8(buffer, 0);
196
+ if (((pm_begin_node_t *)node)->rescue_clause == NULL) {
197
+ pm_buffer_append_u8(buffer, 0);
198
198
  } else {
199
- yp_serialize_node(parser, (yp_node_t *)((yp_begin_node_t *)node)->rescue_clause, buffer);
199
+ pm_serialize_node(parser, (pm_node_t *)((pm_begin_node_t *)node)->rescue_clause, buffer);
200
200
  }
201
- if (((yp_begin_node_t *)node)->else_clause == NULL) {
202
- yp_buffer_append_u8(buffer, 0);
201
+ if (((pm_begin_node_t *)node)->else_clause == NULL) {
202
+ pm_buffer_append_u8(buffer, 0);
203
203
  } else {
204
- yp_serialize_node(parser, (yp_node_t *)((yp_begin_node_t *)node)->else_clause, buffer);
204
+ pm_serialize_node(parser, (pm_node_t *)((pm_begin_node_t *)node)->else_clause, buffer);
205
205
  }
206
- if (((yp_begin_node_t *)node)->ensure_clause == NULL) {
207
- yp_buffer_append_u8(buffer, 0);
206
+ if (((pm_begin_node_t *)node)->ensure_clause == NULL) {
207
+ pm_buffer_append_u8(buffer, 0);
208
208
  } else {
209
- yp_serialize_node(parser, (yp_node_t *)((yp_begin_node_t *)node)->ensure_clause, buffer);
209
+ pm_serialize_node(parser, (pm_node_t *)((pm_begin_node_t *)node)->ensure_clause, buffer);
210
210
  }
211
- if (((yp_begin_node_t *)node)->end_keyword_loc.start == NULL) {
212
- yp_buffer_append_u8(buffer, 0);
211
+ if (((pm_begin_node_t *)node)->end_keyword_loc.start == NULL) {
212
+ pm_buffer_append_u8(buffer, 0);
213
213
  } else {
214
- yp_buffer_append_u8(buffer, 1);
215
- yp_serialize_location(parser, &((yp_begin_node_t *)node)->end_keyword_loc, buffer);
214
+ pm_buffer_append_u8(buffer, 1);
215
+ pm_serialize_location(parser, &((pm_begin_node_t *)node)->end_keyword_loc, buffer);
216
216
  }
217
217
  break;
218
218
  }
219
- case YP_BLOCK_ARGUMENT_NODE: {
220
- if (((yp_block_argument_node_t *)node)->expression == NULL) {
221
- yp_buffer_append_u8(buffer, 0);
219
+ case PM_BLOCK_ARGUMENT_NODE: {
220
+ if (((pm_block_argument_node_t *)node)->expression == NULL) {
221
+ pm_buffer_append_u8(buffer, 0);
222
222
  } else {
223
- yp_serialize_node(parser, (yp_node_t *)((yp_block_argument_node_t *)node)->expression, buffer);
223
+ pm_serialize_node(parser, (pm_node_t *)((pm_block_argument_node_t *)node)->expression, buffer);
224
224
  }
225
- yp_serialize_location(parser, &((yp_block_argument_node_t *)node)->operator_loc, buffer);
225
+ pm_serialize_location(parser, &((pm_block_argument_node_t *)node)->operator_loc, buffer);
226
226
  break;
227
227
  }
228
- case YP_BLOCK_LOCAL_VARIABLE_NODE: {
229
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_block_local_variable_node_t *)node)->name));
228
+ case PM_BLOCK_LOCAL_VARIABLE_NODE: {
229
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_block_local_variable_node_t *)node)->name));
230
230
  break;
231
231
  }
232
- case YP_BLOCK_NODE: {
233
- uint32_t locals_size = yp_sizet_to_u32(((yp_block_node_t *)node)->locals.size);
234
- yp_buffer_append_u32(buffer, locals_size);
232
+ case PM_BLOCK_NODE: {
233
+ uint32_t locals_size = pm_sizet_to_u32(((pm_block_node_t *)node)->locals.size);
234
+ pm_buffer_append_u32(buffer, locals_size);
235
235
  for (uint32_t index = 0; index < locals_size; index++) {
236
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_block_node_t *)node)->locals.ids[index]));
236
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_block_node_t *)node)->locals.ids[index]));
237
237
  }
238
- if (((yp_block_node_t *)node)->parameters == NULL) {
239
- yp_buffer_append_u8(buffer, 0);
238
+ if (((pm_block_node_t *)node)->parameters == NULL) {
239
+ pm_buffer_append_u8(buffer, 0);
240
240
  } else {
241
- yp_serialize_node(parser, (yp_node_t *)((yp_block_node_t *)node)->parameters, buffer);
241
+ pm_serialize_node(parser, (pm_node_t *)((pm_block_node_t *)node)->parameters, buffer);
242
242
  }
243
- if (((yp_block_node_t *)node)->body == NULL) {
244
- yp_buffer_append_u8(buffer, 0);
243
+ if (((pm_block_node_t *)node)->body == NULL) {
244
+ pm_buffer_append_u8(buffer, 0);
245
245
  } else {
246
- yp_serialize_node(parser, (yp_node_t *)((yp_block_node_t *)node)->body, buffer);
246
+ pm_serialize_node(parser, (pm_node_t *)((pm_block_node_t *)node)->body, buffer);
247
247
  }
248
- yp_serialize_location(parser, &((yp_block_node_t *)node)->opening_loc, buffer);
249
- yp_serialize_location(parser, &((yp_block_node_t *)node)->closing_loc, buffer);
248
+ pm_serialize_location(parser, &((pm_block_node_t *)node)->opening_loc, buffer);
249
+ pm_serialize_location(parser, &((pm_block_node_t *)node)->closing_loc, buffer);
250
250
  break;
251
251
  }
252
- case YP_BLOCK_PARAMETER_NODE: {
253
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_block_parameter_node_t *)node)->name));
254
- if (((yp_block_parameter_node_t *)node)->name_loc.start == NULL) {
255
- yp_buffer_append_u8(buffer, 0);
252
+ case PM_BLOCK_PARAMETER_NODE: {
253
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_block_parameter_node_t *)node)->name));
254
+ if (((pm_block_parameter_node_t *)node)->name_loc.start == NULL) {
255
+ pm_buffer_append_u8(buffer, 0);
256
256
  } else {
257
- yp_buffer_append_u8(buffer, 1);
258
- yp_serialize_location(parser, &((yp_block_parameter_node_t *)node)->name_loc, buffer);
257
+ pm_buffer_append_u8(buffer, 1);
258
+ pm_serialize_location(parser, &((pm_block_parameter_node_t *)node)->name_loc, buffer);
259
259
  }
260
- yp_serialize_location(parser, &((yp_block_parameter_node_t *)node)->operator_loc, buffer);
260
+ pm_serialize_location(parser, &((pm_block_parameter_node_t *)node)->operator_loc, buffer);
261
261
  break;
262
262
  }
263
- case YP_BLOCK_PARAMETERS_NODE: {
264
- if (((yp_block_parameters_node_t *)node)->parameters == NULL) {
265
- yp_buffer_append_u8(buffer, 0);
263
+ case PM_BLOCK_PARAMETERS_NODE: {
264
+ if (((pm_block_parameters_node_t *)node)->parameters == NULL) {
265
+ pm_buffer_append_u8(buffer, 0);
266
266
  } else {
267
- yp_serialize_node(parser, (yp_node_t *)((yp_block_parameters_node_t *)node)->parameters, buffer);
267
+ pm_serialize_node(parser, (pm_node_t *)((pm_block_parameters_node_t *)node)->parameters, buffer);
268
268
  }
269
- uint32_t locals_size = yp_sizet_to_u32(((yp_block_parameters_node_t *)node)->locals.size);
270
- yp_buffer_append_u32(buffer, locals_size);
269
+ uint32_t locals_size = pm_sizet_to_u32(((pm_block_parameters_node_t *)node)->locals.size);
270
+ pm_buffer_append_u32(buffer, locals_size);
271
271
  for (uint32_t index = 0; index < locals_size; index++) {
272
- yp_serialize_node(parser, (yp_node_t *) ((yp_block_parameters_node_t *)node)->locals.nodes[index], buffer);
272
+ pm_serialize_node(parser, (pm_node_t *) ((pm_block_parameters_node_t *)node)->locals.nodes[index], buffer);
273
273
  }
274
- if (((yp_block_parameters_node_t *)node)->opening_loc.start == NULL) {
275
- yp_buffer_append_u8(buffer, 0);
274
+ if (((pm_block_parameters_node_t *)node)->opening_loc.start == NULL) {
275
+ pm_buffer_append_u8(buffer, 0);
276
276
  } else {
277
- yp_buffer_append_u8(buffer, 1);
278
- yp_serialize_location(parser, &((yp_block_parameters_node_t *)node)->opening_loc, buffer);
277
+ pm_buffer_append_u8(buffer, 1);
278
+ pm_serialize_location(parser, &((pm_block_parameters_node_t *)node)->opening_loc, buffer);
279
279
  }
280
- if (((yp_block_parameters_node_t *)node)->closing_loc.start == NULL) {
281
- yp_buffer_append_u8(buffer, 0);
280
+ if (((pm_block_parameters_node_t *)node)->closing_loc.start == NULL) {
281
+ pm_buffer_append_u8(buffer, 0);
282
282
  } else {
283
- yp_buffer_append_u8(buffer, 1);
284
- yp_serialize_location(parser, &((yp_block_parameters_node_t *)node)->closing_loc, buffer);
283
+ pm_buffer_append_u8(buffer, 1);
284
+ pm_serialize_location(parser, &((pm_block_parameters_node_t *)node)->closing_loc, buffer);
285
285
  }
286
286
  break;
287
287
  }
288
- case YP_BREAK_NODE: {
289
- if (((yp_break_node_t *)node)->arguments == NULL) {
290
- yp_buffer_append_u8(buffer, 0);
288
+ case PM_BREAK_NODE: {
289
+ if (((pm_break_node_t *)node)->arguments == NULL) {
290
+ pm_buffer_append_u8(buffer, 0);
291
291
  } else {
292
- yp_serialize_node(parser, (yp_node_t *)((yp_break_node_t *)node)->arguments, buffer);
292
+ pm_serialize_node(parser, (pm_node_t *)((pm_break_node_t *)node)->arguments, buffer);
293
293
  }
294
- yp_serialize_location(parser, &((yp_break_node_t *)node)->keyword_loc, buffer);
294
+ pm_serialize_location(parser, &((pm_break_node_t *)node)->keyword_loc, buffer);
295
295
  break;
296
296
  }
297
- case YP_CALL_AND_WRITE_NODE: {
298
- if (((yp_call_and_write_node_t *)node)->receiver == NULL) {
299
- yp_buffer_append_u8(buffer, 0);
297
+ case PM_CALL_AND_WRITE_NODE: {
298
+ if (((pm_call_and_write_node_t *)node)->receiver == NULL) {
299
+ pm_buffer_append_u8(buffer, 0);
300
300
  } else {
301
- yp_serialize_node(parser, (yp_node_t *)((yp_call_and_write_node_t *)node)->receiver, buffer);
301
+ pm_serialize_node(parser, (pm_node_t *)((pm_call_and_write_node_t *)node)->receiver, buffer);
302
302
  }
303
- if (((yp_call_and_write_node_t *)node)->call_operator_loc.start == NULL) {
304
- yp_buffer_append_u8(buffer, 0);
303
+ if (((pm_call_and_write_node_t *)node)->call_operator_loc.start == NULL) {
304
+ pm_buffer_append_u8(buffer, 0);
305
305
  } else {
306
- yp_buffer_append_u8(buffer, 1);
307
- yp_serialize_location(parser, &((yp_call_and_write_node_t *)node)->call_operator_loc, buffer);
306
+ pm_buffer_append_u8(buffer, 1);
307
+ pm_serialize_location(parser, &((pm_call_and_write_node_t *)node)->call_operator_loc, buffer);
308
308
  }
309
- if (((yp_call_and_write_node_t *)node)->message_loc.start == NULL) {
310
- yp_buffer_append_u8(buffer, 0);
309
+ if (((pm_call_and_write_node_t *)node)->message_loc.start == NULL) {
310
+ pm_buffer_append_u8(buffer, 0);
311
311
  } else {
312
- yp_buffer_append_u8(buffer, 1);
313
- yp_serialize_location(parser, &((yp_call_and_write_node_t *)node)->message_loc, buffer);
312
+ pm_buffer_append_u8(buffer, 1);
313
+ pm_serialize_location(parser, &((pm_call_and_write_node_t *)node)->message_loc, buffer);
314
314
  }
315
- if (((yp_call_and_write_node_t *)node)->opening_loc.start == NULL) {
316
- yp_buffer_append_u8(buffer, 0);
315
+ if (((pm_call_and_write_node_t *)node)->opening_loc.start == NULL) {
316
+ pm_buffer_append_u8(buffer, 0);
317
317
  } else {
318
- yp_buffer_append_u8(buffer, 1);
319
- yp_serialize_location(parser, &((yp_call_and_write_node_t *)node)->opening_loc, buffer);
318
+ pm_buffer_append_u8(buffer, 1);
319
+ pm_serialize_location(parser, &((pm_call_and_write_node_t *)node)->opening_loc, buffer);
320
320
  }
321
- if (((yp_call_and_write_node_t *)node)->arguments == NULL) {
322
- yp_buffer_append_u8(buffer, 0);
321
+ if (((pm_call_and_write_node_t *)node)->arguments == NULL) {
322
+ pm_buffer_append_u8(buffer, 0);
323
323
  } else {
324
- yp_serialize_node(parser, (yp_node_t *)((yp_call_and_write_node_t *)node)->arguments, buffer);
324
+ pm_serialize_node(parser, (pm_node_t *)((pm_call_and_write_node_t *)node)->arguments, buffer);
325
325
  }
326
- if (((yp_call_and_write_node_t *)node)->closing_loc.start == NULL) {
327
- yp_buffer_append_u8(buffer, 0);
326
+ if (((pm_call_and_write_node_t *)node)->closing_loc.start == NULL) {
327
+ pm_buffer_append_u8(buffer, 0);
328
328
  } else {
329
- yp_buffer_append_u8(buffer, 1);
330
- yp_serialize_location(parser, &((yp_call_and_write_node_t *)node)->closing_loc, buffer);
329
+ pm_buffer_append_u8(buffer, 1);
330
+ pm_serialize_location(parser, &((pm_call_and_write_node_t *)node)->closing_loc, buffer);
331
331
  }
332
- yp_buffer_append_u32(buffer, node->flags >> 2);
333
- yp_serialize_string(parser, &((yp_call_and_write_node_t *)node)->read_name, buffer);
334
- yp_serialize_string(parser, &((yp_call_and_write_node_t *)node)->write_name, buffer);
335
- yp_serialize_location(parser, &((yp_call_and_write_node_t *)node)->operator_loc, buffer);
336
- yp_serialize_node(parser, (yp_node_t *)((yp_call_and_write_node_t *)node)->value, buffer);
332
+ pm_buffer_append_u32(buffer, node->flags >> 2);
333
+ pm_serialize_string(parser, &((pm_call_and_write_node_t *)node)->read_name, buffer);
334
+ pm_serialize_string(parser, &((pm_call_and_write_node_t *)node)->write_name, buffer);
335
+ pm_serialize_location(parser, &((pm_call_and_write_node_t *)node)->operator_loc, buffer);
336
+ pm_serialize_node(parser, (pm_node_t *)((pm_call_and_write_node_t *)node)->value, buffer);
337
337
  break;
338
338
  }
339
- case YP_CALL_NODE: {
340
- if (((yp_call_node_t *)node)->receiver == NULL) {
341
- yp_buffer_append_u8(buffer, 0);
339
+ case PM_CALL_NODE: {
340
+ if (((pm_call_node_t *)node)->receiver == NULL) {
341
+ pm_buffer_append_u8(buffer, 0);
342
342
  } else {
343
- yp_serialize_node(parser, (yp_node_t *)((yp_call_node_t *)node)->receiver, buffer);
343
+ pm_serialize_node(parser, (pm_node_t *)((pm_call_node_t *)node)->receiver, buffer);
344
344
  }
345
- if (((yp_call_node_t *)node)->call_operator_loc.start == NULL) {
346
- yp_buffer_append_u8(buffer, 0);
345
+ if (((pm_call_node_t *)node)->call_operator_loc.start == NULL) {
346
+ pm_buffer_append_u8(buffer, 0);
347
347
  } else {
348
- yp_buffer_append_u8(buffer, 1);
349
- yp_serialize_location(parser, &((yp_call_node_t *)node)->call_operator_loc, buffer);
348
+ pm_buffer_append_u8(buffer, 1);
349
+ pm_serialize_location(parser, &((pm_call_node_t *)node)->call_operator_loc, buffer);
350
350
  }
351
- if (((yp_call_node_t *)node)->message_loc.start == NULL) {
352
- yp_buffer_append_u8(buffer, 0);
351
+ if (((pm_call_node_t *)node)->message_loc.start == NULL) {
352
+ pm_buffer_append_u8(buffer, 0);
353
353
  } else {
354
- yp_buffer_append_u8(buffer, 1);
355
- yp_serialize_location(parser, &((yp_call_node_t *)node)->message_loc, buffer);
354
+ pm_buffer_append_u8(buffer, 1);
355
+ pm_serialize_location(parser, &((pm_call_node_t *)node)->message_loc, buffer);
356
356
  }
357
- if (((yp_call_node_t *)node)->opening_loc.start == NULL) {
358
- yp_buffer_append_u8(buffer, 0);
357
+ if (((pm_call_node_t *)node)->opening_loc.start == NULL) {
358
+ pm_buffer_append_u8(buffer, 0);
359
359
  } else {
360
- yp_buffer_append_u8(buffer, 1);
361
- yp_serialize_location(parser, &((yp_call_node_t *)node)->opening_loc, buffer);
360
+ pm_buffer_append_u8(buffer, 1);
361
+ pm_serialize_location(parser, &((pm_call_node_t *)node)->opening_loc, buffer);
362
362
  }
363
- if (((yp_call_node_t *)node)->arguments == NULL) {
364
- yp_buffer_append_u8(buffer, 0);
363
+ if (((pm_call_node_t *)node)->arguments == NULL) {
364
+ pm_buffer_append_u8(buffer, 0);
365
365
  } else {
366
- yp_serialize_node(parser, (yp_node_t *)((yp_call_node_t *)node)->arguments, buffer);
366
+ pm_serialize_node(parser, (pm_node_t *)((pm_call_node_t *)node)->arguments, buffer);
367
367
  }
368
- if (((yp_call_node_t *)node)->closing_loc.start == NULL) {
369
- yp_buffer_append_u8(buffer, 0);
368
+ if (((pm_call_node_t *)node)->closing_loc.start == NULL) {
369
+ pm_buffer_append_u8(buffer, 0);
370
370
  } else {
371
- yp_buffer_append_u8(buffer, 1);
372
- yp_serialize_location(parser, &((yp_call_node_t *)node)->closing_loc, buffer);
371
+ pm_buffer_append_u8(buffer, 1);
372
+ pm_serialize_location(parser, &((pm_call_node_t *)node)->closing_loc, buffer);
373
373
  }
374
- if (((yp_call_node_t *)node)->block == NULL) {
375
- yp_buffer_append_u8(buffer, 0);
374
+ if (((pm_call_node_t *)node)->block == NULL) {
375
+ pm_buffer_append_u8(buffer, 0);
376
376
  } else {
377
- yp_serialize_node(parser, (yp_node_t *)((yp_call_node_t *)node)->block, buffer);
377
+ pm_serialize_node(parser, (pm_node_t *)((pm_call_node_t *)node)->block, buffer);
378
378
  }
379
- yp_buffer_append_u32(buffer, node->flags >> 2);
380
- yp_serialize_string(parser, &((yp_call_node_t *)node)->name, buffer);
379
+ pm_buffer_append_u32(buffer, node->flags >> 2);
380
+ pm_serialize_string(parser, &((pm_call_node_t *)node)->name, buffer);
381
381
  break;
382
382
  }
383
- case YP_CALL_OPERATOR_WRITE_NODE: {
384
- if (((yp_call_operator_write_node_t *)node)->receiver == NULL) {
385
- yp_buffer_append_u8(buffer, 0);
383
+ case PM_CALL_OPERATOR_WRITE_NODE: {
384
+ if (((pm_call_operator_write_node_t *)node)->receiver == NULL) {
385
+ pm_buffer_append_u8(buffer, 0);
386
386
  } else {
387
- yp_serialize_node(parser, (yp_node_t *)((yp_call_operator_write_node_t *)node)->receiver, buffer);
387
+ pm_serialize_node(parser, (pm_node_t *)((pm_call_operator_write_node_t *)node)->receiver, buffer);
388
388
  }
389
- if (((yp_call_operator_write_node_t *)node)->call_operator_loc.start == NULL) {
390
- yp_buffer_append_u8(buffer, 0);
389
+ if (((pm_call_operator_write_node_t *)node)->call_operator_loc.start == NULL) {
390
+ pm_buffer_append_u8(buffer, 0);
391
391
  } else {
392
- yp_buffer_append_u8(buffer, 1);
393
- yp_serialize_location(parser, &((yp_call_operator_write_node_t *)node)->call_operator_loc, buffer);
392
+ pm_buffer_append_u8(buffer, 1);
393
+ pm_serialize_location(parser, &((pm_call_operator_write_node_t *)node)->call_operator_loc, buffer);
394
394
  }
395
- if (((yp_call_operator_write_node_t *)node)->message_loc.start == NULL) {
396
- yp_buffer_append_u8(buffer, 0);
395
+ if (((pm_call_operator_write_node_t *)node)->message_loc.start == NULL) {
396
+ pm_buffer_append_u8(buffer, 0);
397
397
  } else {
398
- yp_buffer_append_u8(buffer, 1);
399
- yp_serialize_location(parser, &((yp_call_operator_write_node_t *)node)->message_loc, buffer);
398
+ pm_buffer_append_u8(buffer, 1);
399
+ pm_serialize_location(parser, &((pm_call_operator_write_node_t *)node)->message_loc, buffer);
400
400
  }
401
- if (((yp_call_operator_write_node_t *)node)->opening_loc.start == NULL) {
402
- yp_buffer_append_u8(buffer, 0);
401
+ if (((pm_call_operator_write_node_t *)node)->opening_loc.start == NULL) {
402
+ pm_buffer_append_u8(buffer, 0);
403
403
  } else {
404
- yp_buffer_append_u8(buffer, 1);
405
- yp_serialize_location(parser, &((yp_call_operator_write_node_t *)node)->opening_loc, buffer);
404
+ pm_buffer_append_u8(buffer, 1);
405
+ pm_serialize_location(parser, &((pm_call_operator_write_node_t *)node)->opening_loc, buffer);
406
406
  }
407
- if (((yp_call_operator_write_node_t *)node)->arguments == NULL) {
408
- yp_buffer_append_u8(buffer, 0);
407
+ if (((pm_call_operator_write_node_t *)node)->arguments == NULL) {
408
+ pm_buffer_append_u8(buffer, 0);
409
409
  } else {
410
- yp_serialize_node(parser, (yp_node_t *)((yp_call_operator_write_node_t *)node)->arguments, buffer);
410
+ pm_serialize_node(parser, (pm_node_t *)((pm_call_operator_write_node_t *)node)->arguments, buffer);
411
411
  }
412
- if (((yp_call_operator_write_node_t *)node)->closing_loc.start == NULL) {
413
- yp_buffer_append_u8(buffer, 0);
412
+ if (((pm_call_operator_write_node_t *)node)->closing_loc.start == NULL) {
413
+ pm_buffer_append_u8(buffer, 0);
414
414
  } else {
415
- yp_buffer_append_u8(buffer, 1);
416
- yp_serialize_location(parser, &((yp_call_operator_write_node_t *)node)->closing_loc, buffer);
415
+ pm_buffer_append_u8(buffer, 1);
416
+ pm_serialize_location(parser, &((pm_call_operator_write_node_t *)node)->closing_loc, buffer);
417
417
  }
418
- yp_buffer_append_u32(buffer, node->flags >> 2);
419
- yp_serialize_string(parser, &((yp_call_operator_write_node_t *)node)->read_name, buffer);
420
- yp_serialize_string(parser, &((yp_call_operator_write_node_t *)node)->write_name, buffer);
421
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_call_operator_write_node_t *)node)->operator));
422
- yp_serialize_location(parser, &((yp_call_operator_write_node_t *)node)->operator_loc, buffer);
423
- yp_serialize_node(parser, (yp_node_t *)((yp_call_operator_write_node_t *)node)->value, buffer);
418
+ pm_buffer_append_u32(buffer, node->flags >> 2);
419
+ pm_serialize_string(parser, &((pm_call_operator_write_node_t *)node)->read_name, buffer);
420
+ pm_serialize_string(parser, &((pm_call_operator_write_node_t *)node)->write_name, buffer);
421
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_call_operator_write_node_t *)node)->operator));
422
+ pm_serialize_location(parser, &((pm_call_operator_write_node_t *)node)->operator_loc, buffer);
423
+ pm_serialize_node(parser, (pm_node_t *)((pm_call_operator_write_node_t *)node)->value, buffer);
424
424
  break;
425
425
  }
426
- case YP_CALL_OR_WRITE_NODE: {
427
- if (((yp_call_or_write_node_t *)node)->receiver == NULL) {
428
- yp_buffer_append_u8(buffer, 0);
426
+ case PM_CALL_OR_WRITE_NODE: {
427
+ if (((pm_call_or_write_node_t *)node)->receiver == NULL) {
428
+ pm_buffer_append_u8(buffer, 0);
429
429
  } else {
430
- yp_serialize_node(parser, (yp_node_t *)((yp_call_or_write_node_t *)node)->receiver, buffer);
430
+ pm_serialize_node(parser, (pm_node_t *)((pm_call_or_write_node_t *)node)->receiver, buffer);
431
431
  }
432
- if (((yp_call_or_write_node_t *)node)->call_operator_loc.start == NULL) {
433
- yp_buffer_append_u8(buffer, 0);
432
+ if (((pm_call_or_write_node_t *)node)->call_operator_loc.start == NULL) {
433
+ pm_buffer_append_u8(buffer, 0);
434
434
  } else {
435
- yp_buffer_append_u8(buffer, 1);
436
- yp_serialize_location(parser, &((yp_call_or_write_node_t *)node)->call_operator_loc, buffer);
435
+ pm_buffer_append_u8(buffer, 1);
436
+ pm_serialize_location(parser, &((pm_call_or_write_node_t *)node)->call_operator_loc, buffer);
437
437
  }
438
- if (((yp_call_or_write_node_t *)node)->message_loc.start == NULL) {
439
- yp_buffer_append_u8(buffer, 0);
438
+ if (((pm_call_or_write_node_t *)node)->message_loc.start == NULL) {
439
+ pm_buffer_append_u8(buffer, 0);
440
440
  } else {
441
- yp_buffer_append_u8(buffer, 1);
442
- yp_serialize_location(parser, &((yp_call_or_write_node_t *)node)->message_loc, buffer);
441
+ pm_buffer_append_u8(buffer, 1);
442
+ pm_serialize_location(parser, &((pm_call_or_write_node_t *)node)->message_loc, buffer);
443
443
  }
444
- if (((yp_call_or_write_node_t *)node)->opening_loc.start == NULL) {
445
- yp_buffer_append_u8(buffer, 0);
444
+ if (((pm_call_or_write_node_t *)node)->opening_loc.start == NULL) {
445
+ pm_buffer_append_u8(buffer, 0);
446
446
  } else {
447
- yp_buffer_append_u8(buffer, 1);
448
- yp_serialize_location(parser, &((yp_call_or_write_node_t *)node)->opening_loc, buffer);
447
+ pm_buffer_append_u8(buffer, 1);
448
+ pm_serialize_location(parser, &((pm_call_or_write_node_t *)node)->opening_loc, buffer);
449
449
  }
450
- if (((yp_call_or_write_node_t *)node)->arguments == NULL) {
451
- yp_buffer_append_u8(buffer, 0);
450
+ if (((pm_call_or_write_node_t *)node)->arguments == NULL) {
451
+ pm_buffer_append_u8(buffer, 0);
452
452
  } else {
453
- yp_serialize_node(parser, (yp_node_t *)((yp_call_or_write_node_t *)node)->arguments, buffer);
453
+ pm_serialize_node(parser, (pm_node_t *)((pm_call_or_write_node_t *)node)->arguments, buffer);
454
454
  }
455
- if (((yp_call_or_write_node_t *)node)->closing_loc.start == NULL) {
456
- yp_buffer_append_u8(buffer, 0);
455
+ if (((pm_call_or_write_node_t *)node)->closing_loc.start == NULL) {
456
+ pm_buffer_append_u8(buffer, 0);
457
457
  } else {
458
- yp_buffer_append_u8(buffer, 1);
459
- yp_serialize_location(parser, &((yp_call_or_write_node_t *)node)->closing_loc, buffer);
458
+ pm_buffer_append_u8(buffer, 1);
459
+ pm_serialize_location(parser, &((pm_call_or_write_node_t *)node)->closing_loc, buffer);
460
460
  }
461
- yp_buffer_append_u32(buffer, node->flags >> 2);
462
- yp_serialize_string(parser, &((yp_call_or_write_node_t *)node)->read_name, buffer);
463
- yp_serialize_string(parser, &((yp_call_or_write_node_t *)node)->write_name, buffer);
464
- yp_serialize_location(parser, &((yp_call_or_write_node_t *)node)->operator_loc, buffer);
465
- yp_serialize_node(parser, (yp_node_t *)((yp_call_or_write_node_t *)node)->value, buffer);
461
+ pm_buffer_append_u32(buffer, node->flags >> 2);
462
+ pm_serialize_string(parser, &((pm_call_or_write_node_t *)node)->read_name, buffer);
463
+ pm_serialize_string(parser, &((pm_call_or_write_node_t *)node)->write_name, buffer);
464
+ pm_serialize_location(parser, &((pm_call_or_write_node_t *)node)->operator_loc, buffer);
465
+ pm_serialize_node(parser, (pm_node_t *)((pm_call_or_write_node_t *)node)->value, buffer);
466
466
  break;
467
467
  }
468
- case YP_CAPTURE_PATTERN_NODE: {
469
- yp_serialize_node(parser, (yp_node_t *)((yp_capture_pattern_node_t *)node)->value, buffer);
470
- yp_serialize_node(parser, (yp_node_t *)((yp_capture_pattern_node_t *)node)->target, buffer);
471
- yp_serialize_location(parser, &((yp_capture_pattern_node_t *)node)->operator_loc, buffer);
468
+ case PM_CAPTURE_PATTERN_NODE: {
469
+ pm_serialize_node(parser, (pm_node_t *)((pm_capture_pattern_node_t *)node)->value, buffer);
470
+ pm_serialize_node(parser, (pm_node_t *)((pm_capture_pattern_node_t *)node)->target, buffer);
471
+ pm_serialize_location(parser, &((pm_capture_pattern_node_t *)node)->operator_loc, buffer);
472
472
  break;
473
473
  }
474
- case YP_CASE_NODE: {
475
- if (((yp_case_node_t *)node)->predicate == NULL) {
476
- yp_buffer_append_u8(buffer, 0);
474
+ case PM_CASE_NODE: {
475
+ if (((pm_case_node_t *)node)->predicate == NULL) {
476
+ pm_buffer_append_u8(buffer, 0);
477
477
  } else {
478
- yp_serialize_node(parser, (yp_node_t *)((yp_case_node_t *)node)->predicate, buffer);
478
+ pm_serialize_node(parser, (pm_node_t *)((pm_case_node_t *)node)->predicate, buffer);
479
479
  }
480
- uint32_t conditions_size = yp_sizet_to_u32(((yp_case_node_t *)node)->conditions.size);
481
- yp_buffer_append_u32(buffer, conditions_size);
480
+ uint32_t conditions_size = pm_sizet_to_u32(((pm_case_node_t *)node)->conditions.size);
481
+ pm_buffer_append_u32(buffer, conditions_size);
482
482
  for (uint32_t index = 0; index < conditions_size; index++) {
483
- yp_serialize_node(parser, (yp_node_t *) ((yp_case_node_t *)node)->conditions.nodes[index], buffer);
483
+ pm_serialize_node(parser, (pm_node_t *) ((pm_case_node_t *)node)->conditions.nodes[index], buffer);
484
484
  }
485
- if (((yp_case_node_t *)node)->consequent == NULL) {
486
- yp_buffer_append_u8(buffer, 0);
485
+ if (((pm_case_node_t *)node)->consequent == NULL) {
486
+ pm_buffer_append_u8(buffer, 0);
487
487
  } else {
488
- yp_serialize_node(parser, (yp_node_t *)((yp_case_node_t *)node)->consequent, buffer);
488
+ pm_serialize_node(parser, (pm_node_t *)((pm_case_node_t *)node)->consequent, buffer);
489
489
  }
490
- yp_serialize_location(parser, &((yp_case_node_t *)node)->case_keyword_loc, buffer);
491
- yp_serialize_location(parser, &((yp_case_node_t *)node)->end_keyword_loc, buffer);
490
+ pm_serialize_location(parser, &((pm_case_node_t *)node)->case_keyword_loc, buffer);
491
+ pm_serialize_location(parser, &((pm_case_node_t *)node)->end_keyword_loc, buffer);
492
492
  break;
493
493
  }
494
- case YP_CLASS_NODE: {
495
- uint32_t locals_size = yp_sizet_to_u32(((yp_class_node_t *)node)->locals.size);
496
- yp_buffer_append_u32(buffer, locals_size);
494
+ case PM_CLASS_NODE: {
495
+ uint32_t locals_size = pm_sizet_to_u32(((pm_class_node_t *)node)->locals.size);
496
+ pm_buffer_append_u32(buffer, locals_size);
497
497
  for (uint32_t index = 0; index < locals_size; index++) {
498
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_class_node_t *)node)->locals.ids[index]));
498
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_class_node_t *)node)->locals.ids[index]));
499
499
  }
500
- yp_serialize_location(parser, &((yp_class_node_t *)node)->class_keyword_loc, buffer);
501
- yp_serialize_node(parser, (yp_node_t *)((yp_class_node_t *)node)->constant_path, buffer);
502
- if (((yp_class_node_t *)node)->inheritance_operator_loc.start == NULL) {
503
- yp_buffer_append_u8(buffer, 0);
500
+ pm_serialize_location(parser, &((pm_class_node_t *)node)->class_keyword_loc, buffer);
501
+ pm_serialize_node(parser, (pm_node_t *)((pm_class_node_t *)node)->constant_path, buffer);
502
+ if (((pm_class_node_t *)node)->inheritance_operator_loc.start == NULL) {
503
+ pm_buffer_append_u8(buffer, 0);
504
504
  } else {
505
- yp_buffer_append_u8(buffer, 1);
506
- yp_serialize_location(parser, &((yp_class_node_t *)node)->inheritance_operator_loc, buffer);
505
+ pm_buffer_append_u8(buffer, 1);
506
+ pm_serialize_location(parser, &((pm_class_node_t *)node)->inheritance_operator_loc, buffer);
507
507
  }
508
- if (((yp_class_node_t *)node)->superclass == NULL) {
509
- yp_buffer_append_u8(buffer, 0);
508
+ if (((pm_class_node_t *)node)->superclass == NULL) {
509
+ pm_buffer_append_u8(buffer, 0);
510
510
  } else {
511
- yp_serialize_node(parser, (yp_node_t *)((yp_class_node_t *)node)->superclass, buffer);
511
+ pm_serialize_node(parser, (pm_node_t *)((pm_class_node_t *)node)->superclass, buffer);
512
512
  }
513
- if (((yp_class_node_t *)node)->body == NULL) {
514
- yp_buffer_append_u8(buffer, 0);
513
+ if (((pm_class_node_t *)node)->body == NULL) {
514
+ pm_buffer_append_u8(buffer, 0);
515
515
  } else {
516
- yp_serialize_node(parser, (yp_node_t *)((yp_class_node_t *)node)->body, buffer);
516
+ pm_serialize_node(parser, (pm_node_t *)((pm_class_node_t *)node)->body, buffer);
517
517
  }
518
- yp_serialize_location(parser, &((yp_class_node_t *)node)->end_keyword_loc, buffer);
519
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_class_node_t *)node)->name));
518
+ pm_serialize_location(parser, &((pm_class_node_t *)node)->end_keyword_loc, buffer);
519
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_class_node_t *)node)->name));
520
520
  break;
521
521
  }
522
- case YP_CLASS_VARIABLE_AND_WRITE_NODE: {
523
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_class_variable_and_write_node_t *)node)->name));
524
- yp_serialize_location(parser, &((yp_class_variable_and_write_node_t *)node)->name_loc, buffer);
525
- yp_serialize_location(parser, &((yp_class_variable_and_write_node_t *)node)->operator_loc, buffer);
526
- yp_serialize_node(parser, (yp_node_t *)((yp_class_variable_and_write_node_t *)node)->value, buffer);
522
+ case PM_CLASS_VARIABLE_AND_WRITE_NODE: {
523
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_class_variable_and_write_node_t *)node)->name));
524
+ pm_serialize_location(parser, &((pm_class_variable_and_write_node_t *)node)->name_loc, buffer);
525
+ pm_serialize_location(parser, &((pm_class_variable_and_write_node_t *)node)->operator_loc, buffer);
526
+ pm_serialize_node(parser, (pm_node_t *)((pm_class_variable_and_write_node_t *)node)->value, buffer);
527
527
  break;
528
528
  }
529
- case YP_CLASS_VARIABLE_OPERATOR_WRITE_NODE: {
530
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_class_variable_operator_write_node_t *)node)->name));
531
- yp_serialize_location(parser, &((yp_class_variable_operator_write_node_t *)node)->name_loc, buffer);
532
- yp_serialize_location(parser, &((yp_class_variable_operator_write_node_t *)node)->operator_loc, buffer);
533
- yp_serialize_node(parser, (yp_node_t *)((yp_class_variable_operator_write_node_t *)node)->value, buffer);
534
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_class_variable_operator_write_node_t *)node)->operator));
529
+ case PM_CLASS_VARIABLE_OPERATOR_WRITE_NODE: {
530
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_class_variable_operator_write_node_t *)node)->name));
531
+ pm_serialize_location(parser, &((pm_class_variable_operator_write_node_t *)node)->name_loc, buffer);
532
+ pm_serialize_location(parser, &((pm_class_variable_operator_write_node_t *)node)->operator_loc, buffer);
533
+ pm_serialize_node(parser, (pm_node_t *)((pm_class_variable_operator_write_node_t *)node)->value, buffer);
534
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_class_variable_operator_write_node_t *)node)->operator));
535
535
  break;
536
536
  }
537
- case YP_CLASS_VARIABLE_OR_WRITE_NODE: {
538
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_class_variable_or_write_node_t *)node)->name));
539
- yp_serialize_location(parser, &((yp_class_variable_or_write_node_t *)node)->name_loc, buffer);
540
- yp_serialize_location(parser, &((yp_class_variable_or_write_node_t *)node)->operator_loc, buffer);
541
- yp_serialize_node(parser, (yp_node_t *)((yp_class_variable_or_write_node_t *)node)->value, buffer);
537
+ case PM_CLASS_VARIABLE_OR_WRITE_NODE: {
538
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_class_variable_or_write_node_t *)node)->name));
539
+ pm_serialize_location(parser, &((pm_class_variable_or_write_node_t *)node)->name_loc, buffer);
540
+ pm_serialize_location(parser, &((pm_class_variable_or_write_node_t *)node)->operator_loc, buffer);
541
+ pm_serialize_node(parser, (pm_node_t *)((pm_class_variable_or_write_node_t *)node)->value, buffer);
542
542
  break;
543
543
  }
544
- case YP_CLASS_VARIABLE_READ_NODE: {
545
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_class_variable_read_node_t *)node)->name));
544
+ case PM_CLASS_VARIABLE_READ_NODE: {
545
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_class_variable_read_node_t *)node)->name));
546
546
  break;
547
547
  }
548
- case YP_CLASS_VARIABLE_TARGET_NODE: {
549
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_class_variable_target_node_t *)node)->name));
548
+ case PM_CLASS_VARIABLE_TARGET_NODE: {
549
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_class_variable_target_node_t *)node)->name));
550
550
  break;
551
551
  }
552
- case YP_CLASS_VARIABLE_WRITE_NODE: {
553
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_class_variable_write_node_t *)node)->name));
554
- yp_serialize_location(parser, &((yp_class_variable_write_node_t *)node)->name_loc, buffer);
555
- yp_serialize_node(parser, (yp_node_t *)((yp_class_variable_write_node_t *)node)->value, buffer);
556
- if (((yp_class_variable_write_node_t *)node)->operator_loc.start == NULL) {
557
- yp_buffer_append_u8(buffer, 0);
552
+ case PM_CLASS_VARIABLE_WRITE_NODE: {
553
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_class_variable_write_node_t *)node)->name));
554
+ pm_serialize_location(parser, &((pm_class_variable_write_node_t *)node)->name_loc, buffer);
555
+ pm_serialize_node(parser, (pm_node_t *)((pm_class_variable_write_node_t *)node)->value, buffer);
556
+ if (((pm_class_variable_write_node_t *)node)->operator_loc.start == NULL) {
557
+ pm_buffer_append_u8(buffer, 0);
558
558
  } else {
559
- yp_buffer_append_u8(buffer, 1);
560
- yp_serialize_location(parser, &((yp_class_variable_write_node_t *)node)->operator_loc, buffer);
559
+ pm_buffer_append_u8(buffer, 1);
560
+ pm_serialize_location(parser, &((pm_class_variable_write_node_t *)node)->operator_loc, buffer);
561
561
  }
562
562
  break;
563
563
  }
564
- case YP_CONSTANT_AND_WRITE_NODE: {
565
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_constant_and_write_node_t *)node)->name));
566
- yp_serialize_location(parser, &((yp_constant_and_write_node_t *)node)->name_loc, buffer);
567
- yp_serialize_location(parser, &((yp_constant_and_write_node_t *)node)->operator_loc, buffer);
568
- yp_serialize_node(parser, (yp_node_t *)((yp_constant_and_write_node_t *)node)->value, buffer);
564
+ case PM_CONSTANT_AND_WRITE_NODE: {
565
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_constant_and_write_node_t *)node)->name));
566
+ pm_serialize_location(parser, &((pm_constant_and_write_node_t *)node)->name_loc, buffer);
567
+ pm_serialize_location(parser, &((pm_constant_and_write_node_t *)node)->operator_loc, buffer);
568
+ pm_serialize_node(parser, (pm_node_t *)((pm_constant_and_write_node_t *)node)->value, buffer);
569
569
  break;
570
570
  }
571
- case YP_CONSTANT_OPERATOR_WRITE_NODE: {
572
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_constant_operator_write_node_t *)node)->name));
573
- yp_serialize_location(parser, &((yp_constant_operator_write_node_t *)node)->name_loc, buffer);
574
- yp_serialize_location(parser, &((yp_constant_operator_write_node_t *)node)->operator_loc, buffer);
575
- yp_serialize_node(parser, (yp_node_t *)((yp_constant_operator_write_node_t *)node)->value, buffer);
576
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_constant_operator_write_node_t *)node)->operator));
571
+ case PM_CONSTANT_OPERATOR_WRITE_NODE: {
572
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_constant_operator_write_node_t *)node)->name));
573
+ pm_serialize_location(parser, &((pm_constant_operator_write_node_t *)node)->name_loc, buffer);
574
+ pm_serialize_location(parser, &((pm_constant_operator_write_node_t *)node)->operator_loc, buffer);
575
+ pm_serialize_node(parser, (pm_node_t *)((pm_constant_operator_write_node_t *)node)->value, buffer);
576
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_constant_operator_write_node_t *)node)->operator));
577
577
  break;
578
578
  }
579
- case YP_CONSTANT_OR_WRITE_NODE: {
580
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_constant_or_write_node_t *)node)->name));
581
- yp_serialize_location(parser, &((yp_constant_or_write_node_t *)node)->name_loc, buffer);
582
- yp_serialize_location(parser, &((yp_constant_or_write_node_t *)node)->operator_loc, buffer);
583
- yp_serialize_node(parser, (yp_node_t *)((yp_constant_or_write_node_t *)node)->value, buffer);
579
+ case PM_CONSTANT_OR_WRITE_NODE: {
580
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_constant_or_write_node_t *)node)->name));
581
+ pm_serialize_location(parser, &((pm_constant_or_write_node_t *)node)->name_loc, buffer);
582
+ pm_serialize_location(parser, &((pm_constant_or_write_node_t *)node)->operator_loc, buffer);
583
+ pm_serialize_node(parser, (pm_node_t *)((pm_constant_or_write_node_t *)node)->value, buffer);
584
584
  break;
585
585
  }
586
- case YP_CONSTANT_PATH_AND_WRITE_NODE: {
587
- yp_serialize_node(parser, (yp_node_t *)((yp_constant_path_and_write_node_t *)node)->target, buffer);
588
- yp_serialize_location(parser, &((yp_constant_path_and_write_node_t *)node)->operator_loc, buffer);
589
- yp_serialize_node(parser, (yp_node_t *)((yp_constant_path_and_write_node_t *)node)->value, buffer);
586
+ case PM_CONSTANT_PATH_AND_WRITE_NODE: {
587
+ pm_serialize_node(parser, (pm_node_t *)((pm_constant_path_and_write_node_t *)node)->target, buffer);
588
+ pm_serialize_location(parser, &((pm_constant_path_and_write_node_t *)node)->operator_loc, buffer);
589
+ pm_serialize_node(parser, (pm_node_t *)((pm_constant_path_and_write_node_t *)node)->value, buffer);
590
590
  break;
591
591
  }
592
- case YP_CONSTANT_PATH_NODE: {
593
- if (((yp_constant_path_node_t *)node)->parent == NULL) {
594
- yp_buffer_append_u8(buffer, 0);
592
+ case PM_CONSTANT_PATH_NODE: {
593
+ if (((pm_constant_path_node_t *)node)->parent == NULL) {
594
+ pm_buffer_append_u8(buffer, 0);
595
595
  } else {
596
- yp_serialize_node(parser, (yp_node_t *)((yp_constant_path_node_t *)node)->parent, buffer);
596
+ pm_serialize_node(parser, (pm_node_t *)((pm_constant_path_node_t *)node)->parent, buffer);
597
597
  }
598
- yp_serialize_node(parser, (yp_node_t *)((yp_constant_path_node_t *)node)->child, buffer);
599
- yp_serialize_location(parser, &((yp_constant_path_node_t *)node)->delimiter_loc, buffer);
598
+ pm_serialize_node(parser, (pm_node_t *)((pm_constant_path_node_t *)node)->child, buffer);
599
+ pm_serialize_location(parser, &((pm_constant_path_node_t *)node)->delimiter_loc, buffer);
600
600
  break;
601
601
  }
602
- case YP_CONSTANT_PATH_OPERATOR_WRITE_NODE: {
603
- yp_serialize_node(parser, (yp_node_t *)((yp_constant_path_operator_write_node_t *)node)->target, buffer);
604
- yp_serialize_location(parser, &((yp_constant_path_operator_write_node_t *)node)->operator_loc, buffer);
605
- yp_serialize_node(parser, (yp_node_t *)((yp_constant_path_operator_write_node_t *)node)->value, buffer);
606
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_constant_path_operator_write_node_t *)node)->operator));
602
+ case PM_CONSTANT_PATH_OPERATOR_WRITE_NODE: {
603
+ pm_serialize_node(parser, (pm_node_t *)((pm_constant_path_operator_write_node_t *)node)->target, buffer);
604
+ pm_serialize_location(parser, &((pm_constant_path_operator_write_node_t *)node)->operator_loc, buffer);
605
+ pm_serialize_node(parser, (pm_node_t *)((pm_constant_path_operator_write_node_t *)node)->value, buffer);
606
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_constant_path_operator_write_node_t *)node)->operator));
607
607
  break;
608
608
  }
609
- case YP_CONSTANT_PATH_OR_WRITE_NODE: {
610
- yp_serialize_node(parser, (yp_node_t *)((yp_constant_path_or_write_node_t *)node)->target, buffer);
611
- yp_serialize_location(parser, &((yp_constant_path_or_write_node_t *)node)->operator_loc, buffer);
612
- yp_serialize_node(parser, (yp_node_t *)((yp_constant_path_or_write_node_t *)node)->value, buffer);
609
+ case PM_CONSTANT_PATH_OR_WRITE_NODE: {
610
+ pm_serialize_node(parser, (pm_node_t *)((pm_constant_path_or_write_node_t *)node)->target, buffer);
611
+ pm_serialize_location(parser, &((pm_constant_path_or_write_node_t *)node)->operator_loc, buffer);
612
+ pm_serialize_node(parser, (pm_node_t *)((pm_constant_path_or_write_node_t *)node)->value, buffer);
613
613
  break;
614
614
  }
615
- case YP_CONSTANT_PATH_TARGET_NODE: {
616
- if (((yp_constant_path_target_node_t *)node)->parent == NULL) {
617
- yp_buffer_append_u8(buffer, 0);
615
+ case PM_CONSTANT_PATH_TARGET_NODE: {
616
+ if (((pm_constant_path_target_node_t *)node)->parent == NULL) {
617
+ pm_buffer_append_u8(buffer, 0);
618
618
  } else {
619
- yp_serialize_node(parser, (yp_node_t *)((yp_constant_path_target_node_t *)node)->parent, buffer);
619
+ pm_serialize_node(parser, (pm_node_t *)((pm_constant_path_target_node_t *)node)->parent, buffer);
620
620
  }
621
- yp_serialize_node(parser, (yp_node_t *)((yp_constant_path_target_node_t *)node)->child, buffer);
622
- yp_serialize_location(parser, &((yp_constant_path_target_node_t *)node)->delimiter_loc, buffer);
621
+ pm_serialize_node(parser, (pm_node_t *)((pm_constant_path_target_node_t *)node)->child, buffer);
622
+ pm_serialize_location(parser, &((pm_constant_path_target_node_t *)node)->delimiter_loc, buffer);
623
623
  break;
624
624
  }
625
- case YP_CONSTANT_PATH_WRITE_NODE: {
626
- yp_serialize_node(parser, (yp_node_t *)((yp_constant_path_write_node_t *)node)->target, buffer);
627
- yp_serialize_location(parser, &((yp_constant_path_write_node_t *)node)->operator_loc, buffer);
628
- yp_serialize_node(parser, (yp_node_t *)((yp_constant_path_write_node_t *)node)->value, buffer);
625
+ case PM_CONSTANT_PATH_WRITE_NODE: {
626
+ pm_serialize_node(parser, (pm_node_t *)((pm_constant_path_write_node_t *)node)->target, buffer);
627
+ pm_serialize_location(parser, &((pm_constant_path_write_node_t *)node)->operator_loc, buffer);
628
+ pm_serialize_node(parser, (pm_node_t *)((pm_constant_path_write_node_t *)node)->value, buffer);
629
629
  break;
630
630
  }
631
- case YP_CONSTANT_READ_NODE: {
632
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_constant_read_node_t *)node)->name));
631
+ case PM_CONSTANT_READ_NODE: {
632
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_constant_read_node_t *)node)->name));
633
633
  break;
634
634
  }
635
- case YP_CONSTANT_TARGET_NODE: {
636
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_constant_target_node_t *)node)->name));
635
+ case PM_CONSTANT_TARGET_NODE: {
636
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_constant_target_node_t *)node)->name));
637
637
  break;
638
638
  }
639
- case YP_CONSTANT_WRITE_NODE: {
640
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_constant_write_node_t *)node)->name));
641
- yp_serialize_location(parser, &((yp_constant_write_node_t *)node)->name_loc, buffer);
642
- yp_serialize_node(parser, (yp_node_t *)((yp_constant_write_node_t *)node)->value, buffer);
643
- yp_serialize_location(parser, &((yp_constant_write_node_t *)node)->operator_loc, buffer);
639
+ case PM_CONSTANT_WRITE_NODE: {
640
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_constant_write_node_t *)node)->name));
641
+ pm_serialize_location(parser, &((pm_constant_write_node_t *)node)->name_loc, buffer);
642
+ pm_serialize_node(parser, (pm_node_t *)((pm_constant_write_node_t *)node)->value, buffer);
643
+ pm_serialize_location(parser, &((pm_constant_write_node_t *)node)->operator_loc, buffer);
644
644
  break;
645
645
  }
646
- case YP_DEF_NODE: {
646
+ case PM_DEF_NODE: {
647
647
  // serialize length
648
648
  // encoding of location u32s make us need to save this offset.
649
649
  size_t length_offset = buffer->length;
650
- yp_buffer_append_str(buffer, "\0\0\0\0", 4); /* consume 4 bytes, updated below */
651
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_def_node_t *)node)->name));
652
- yp_serialize_location(parser, &((yp_def_node_t *)node)->name_loc, buffer);
653
- if (((yp_def_node_t *)node)->receiver == NULL) {
654
- yp_buffer_append_u8(buffer, 0);
650
+ pm_buffer_append_str(buffer, "\0\0\0\0", 4); /* consume 4 bytes, updated below */
651
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_def_node_t *)node)->name));
652
+ pm_serialize_location(parser, &((pm_def_node_t *)node)->name_loc, buffer);
653
+ if (((pm_def_node_t *)node)->receiver == NULL) {
654
+ pm_buffer_append_u8(buffer, 0);
655
655
  } else {
656
- yp_serialize_node(parser, (yp_node_t *)((yp_def_node_t *)node)->receiver, buffer);
656
+ pm_serialize_node(parser, (pm_node_t *)((pm_def_node_t *)node)->receiver, buffer);
657
657
  }
658
- if (((yp_def_node_t *)node)->parameters == NULL) {
659
- yp_buffer_append_u8(buffer, 0);
658
+ if (((pm_def_node_t *)node)->parameters == NULL) {
659
+ pm_buffer_append_u8(buffer, 0);
660
660
  } else {
661
- yp_serialize_node(parser, (yp_node_t *)((yp_def_node_t *)node)->parameters, buffer);
661
+ pm_serialize_node(parser, (pm_node_t *)((pm_def_node_t *)node)->parameters, buffer);
662
662
  }
663
- if (((yp_def_node_t *)node)->body == NULL) {
664
- yp_buffer_append_u8(buffer, 0);
663
+ if (((pm_def_node_t *)node)->body == NULL) {
664
+ pm_buffer_append_u8(buffer, 0);
665
665
  } else {
666
- yp_serialize_node(parser, (yp_node_t *)((yp_def_node_t *)node)->body, buffer);
666
+ pm_serialize_node(parser, (pm_node_t *)((pm_def_node_t *)node)->body, buffer);
667
667
  }
668
- uint32_t locals_size = yp_sizet_to_u32(((yp_def_node_t *)node)->locals.size);
669
- yp_buffer_append_u32(buffer, locals_size);
668
+ uint32_t locals_size = pm_sizet_to_u32(((pm_def_node_t *)node)->locals.size);
669
+ pm_buffer_append_u32(buffer, locals_size);
670
670
  for (uint32_t index = 0; index < locals_size; index++) {
671
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_def_node_t *)node)->locals.ids[index]));
671
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_def_node_t *)node)->locals.ids[index]));
672
672
  }
673
- yp_serialize_location(parser, &((yp_def_node_t *)node)->def_keyword_loc, buffer);
674
- if (((yp_def_node_t *)node)->operator_loc.start == NULL) {
675
- yp_buffer_append_u8(buffer, 0);
673
+ pm_serialize_location(parser, &((pm_def_node_t *)node)->def_keyword_loc, buffer);
674
+ if (((pm_def_node_t *)node)->operator_loc.start == NULL) {
675
+ pm_buffer_append_u8(buffer, 0);
676
676
  } else {
677
- yp_buffer_append_u8(buffer, 1);
678
- yp_serialize_location(parser, &((yp_def_node_t *)node)->operator_loc, buffer);
677
+ pm_buffer_append_u8(buffer, 1);
678
+ pm_serialize_location(parser, &((pm_def_node_t *)node)->operator_loc, buffer);
679
679
  }
680
- if (((yp_def_node_t *)node)->lparen_loc.start == NULL) {
681
- yp_buffer_append_u8(buffer, 0);
680
+ if (((pm_def_node_t *)node)->lparen_loc.start == NULL) {
681
+ pm_buffer_append_u8(buffer, 0);
682
682
  } else {
683
- yp_buffer_append_u8(buffer, 1);
684
- yp_serialize_location(parser, &((yp_def_node_t *)node)->lparen_loc, buffer);
683
+ pm_buffer_append_u8(buffer, 1);
684
+ pm_serialize_location(parser, &((pm_def_node_t *)node)->lparen_loc, buffer);
685
685
  }
686
- if (((yp_def_node_t *)node)->rparen_loc.start == NULL) {
687
- yp_buffer_append_u8(buffer, 0);
686
+ if (((pm_def_node_t *)node)->rparen_loc.start == NULL) {
687
+ pm_buffer_append_u8(buffer, 0);
688
688
  } else {
689
- yp_buffer_append_u8(buffer, 1);
690
- yp_serialize_location(parser, &((yp_def_node_t *)node)->rparen_loc, buffer);
689
+ pm_buffer_append_u8(buffer, 1);
690
+ pm_serialize_location(parser, &((pm_def_node_t *)node)->rparen_loc, buffer);
691
691
  }
692
- if (((yp_def_node_t *)node)->equal_loc.start == NULL) {
693
- yp_buffer_append_u8(buffer, 0);
692
+ if (((pm_def_node_t *)node)->equal_loc.start == NULL) {
693
+ pm_buffer_append_u8(buffer, 0);
694
694
  } else {
695
- yp_buffer_append_u8(buffer, 1);
696
- yp_serialize_location(parser, &((yp_def_node_t *)node)->equal_loc, buffer);
695
+ pm_buffer_append_u8(buffer, 1);
696
+ pm_serialize_location(parser, &((pm_def_node_t *)node)->equal_loc, buffer);
697
697
  }
698
- if (((yp_def_node_t *)node)->end_keyword_loc.start == NULL) {
699
- yp_buffer_append_u8(buffer, 0);
698
+ if (((pm_def_node_t *)node)->end_keyword_loc.start == NULL) {
699
+ pm_buffer_append_u8(buffer, 0);
700
700
  } else {
701
- yp_buffer_append_u8(buffer, 1);
702
- yp_serialize_location(parser, &((yp_def_node_t *)node)->end_keyword_loc, buffer);
701
+ pm_buffer_append_u8(buffer, 1);
702
+ pm_serialize_location(parser, &((pm_def_node_t *)node)->end_keyword_loc, buffer);
703
703
  }
704
704
  // serialize length
705
- uint32_t length = yp_sizet_to_u32(buffer->length - offset - sizeof(uint32_t));
705
+ uint32_t length = pm_sizet_to_u32(buffer->length - offset - sizeof(uint32_t));
706
706
  memcpy(buffer->value + length_offset, &length, sizeof(uint32_t));
707
707
  break;
708
708
  }
709
- case YP_DEFINED_NODE: {
710
- if (((yp_defined_node_t *)node)->lparen_loc.start == NULL) {
711
- yp_buffer_append_u8(buffer, 0);
709
+ case PM_DEFINED_NODE: {
710
+ if (((pm_defined_node_t *)node)->lparen_loc.start == NULL) {
711
+ pm_buffer_append_u8(buffer, 0);
712
712
  } else {
713
- yp_buffer_append_u8(buffer, 1);
714
- yp_serialize_location(parser, &((yp_defined_node_t *)node)->lparen_loc, buffer);
713
+ pm_buffer_append_u8(buffer, 1);
714
+ pm_serialize_location(parser, &((pm_defined_node_t *)node)->lparen_loc, buffer);
715
715
  }
716
- yp_serialize_node(parser, (yp_node_t *)((yp_defined_node_t *)node)->value, buffer);
717
- if (((yp_defined_node_t *)node)->rparen_loc.start == NULL) {
718
- yp_buffer_append_u8(buffer, 0);
716
+ pm_serialize_node(parser, (pm_node_t *)((pm_defined_node_t *)node)->value, buffer);
717
+ if (((pm_defined_node_t *)node)->rparen_loc.start == NULL) {
718
+ pm_buffer_append_u8(buffer, 0);
719
719
  } else {
720
- yp_buffer_append_u8(buffer, 1);
721
- yp_serialize_location(parser, &((yp_defined_node_t *)node)->rparen_loc, buffer);
720
+ pm_buffer_append_u8(buffer, 1);
721
+ pm_serialize_location(parser, &((pm_defined_node_t *)node)->rparen_loc, buffer);
722
722
  }
723
- yp_serialize_location(parser, &((yp_defined_node_t *)node)->keyword_loc, buffer);
723
+ pm_serialize_location(parser, &((pm_defined_node_t *)node)->keyword_loc, buffer);
724
724
  break;
725
725
  }
726
- case YP_ELSE_NODE: {
727
- yp_serialize_location(parser, &((yp_else_node_t *)node)->else_keyword_loc, buffer);
728
- if (((yp_else_node_t *)node)->statements == NULL) {
729
- yp_buffer_append_u8(buffer, 0);
726
+ case PM_ELSE_NODE: {
727
+ pm_serialize_location(parser, &((pm_else_node_t *)node)->else_keyword_loc, buffer);
728
+ if (((pm_else_node_t *)node)->statements == NULL) {
729
+ pm_buffer_append_u8(buffer, 0);
730
730
  } else {
731
- yp_serialize_node(parser, (yp_node_t *)((yp_else_node_t *)node)->statements, buffer);
731
+ pm_serialize_node(parser, (pm_node_t *)((pm_else_node_t *)node)->statements, buffer);
732
732
  }
733
- if (((yp_else_node_t *)node)->end_keyword_loc.start == NULL) {
734
- yp_buffer_append_u8(buffer, 0);
733
+ if (((pm_else_node_t *)node)->end_keyword_loc.start == NULL) {
734
+ pm_buffer_append_u8(buffer, 0);
735
735
  } else {
736
- yp_buffer_append_u8(buffer, 1);
737
- yp_serialize_location(parser, &((yp_else_node_t *)node)->end_keyword_loc, buffer);
736
+ pm_buffer_append_u8(buffer, 1);
737
+ pm_serialize_location(parser, &((pm_else_node_t *)node)->end_keyword_loc, buffer);
738
738
  }
739
739
  break;
740
740
  }
741
- case YP_EMBEDDED_STATEMENTS_NODE: {
742
- yp_serialize_location(parser, &((yp_embedded_statements_node_t *)node)->opening_loc, buffer);
743
- if (((yp_embedded_statements_node_t *)node)->statements == NULL) {
744
- yp_buffer_append_u8(buffer, 0);
741
+ case PM_EMBEDDED_STATEMENTS_NODE: {
742
+ pm_serialize_location(parser, &((pm_embedded_statements_node_t *)node)->opening_loc, buffer);
743
+ if (((pm_embedded_statements_node_t *)node)->statements == NULL) {
744
+ pm_buffer_append_u8(buffer, 0);
745
745
  } else {
746
- yp_serialize_node(parser, (yp_node_t *)((yp_embedded_statements_node_t *)node)->statements, buffer);
746
+ pm_serialize_node(parser, (pm_node_t *)((pm_embedded_statements_node_t *)node)->statements, buffer);
747
747
  }
748
- yp_serialize_location(parser, &((yp_embedded_statements_node_t *)node)->closing_loc, buffer);
748
+ pm_serialize_location(parser, &((pm_embedded_statements_node_t *)node)->closing_loc, buffer);
749
749
  break;
750
750
  }
751
- case YP_EMBEDDED_VARIABLE_NODE: {
752
- yp_serialize_location(parser, &((yp_embedded_variable_node_t *)node)->operator_loc, buffer);
753
- yp_serialize_node(parser, (yp_node_t *)((yp_embedded_variable_node_t *)node)->variable, buffer);
751
+ case PM_EMBEDDED_VARIABLE_NODE: {
752
+ pm_serialize_location(parser, &((pm_embedded_variable_node_t *)node)->operator_loc, buffer);
753
+ pm_serialize_node(parser, (pm_node_t *)((pm_embedded_variable_node_t *)node)->variable, buffer);
754
754
  break;
755
755
  }
756
- case YP_ENSURE_NODE: {
757
- yp_serialize_location(parser, &((yp_ensure_node_t *)node)->ensure_keyword_loc, buffer);
758
- if (((yp_ensure_node_t *)node)->statements == NULL) {
759
- yp_buffer_append_u8(buffer, 0);
756
+ case PM_ENSURE_NODE: {
757
+ pm_serialize_location(parser, &((pm_ensure_node_t *)node)->ensure_keyword_loc, buffer);
758
+ if (((pm_ensure_node_t *)node)->statements == NULL) {
759
+ pm_buffer_append_u8(buffer, 0);
760
760
  } else {
761
- yp_serialize_node(parser, (yp_node_t *)((yp_ensure_node_t *)node)->statements, buffer);
761
+ pm_serialize_node(parser, (pm_node_t *)((pm_ensure_node_t *)node)->statements, buffer);
762
762
  }
763
- yp_serialize_location(parser, &((yp_ensure_node_t *)node)->end_keyword_loc, buffer);
763
+ pm_serialize_location(parser, &((pm_ensure_node_t *)node)->end_keyword_loc, buffer);
764
764
  break;
765
765
  }
766
- case YP_FALSE_NODE: {
766
+ case PM_FALSE_NODE: {
767
767
  break;
768
768
  }
769
- case YP_FIND_PATTERN_NODE: {
770
- if (((yp_find_pattern_node_t *)node)->constant == NULL) {
771
- yp_buffer_append_u8(buffer, 0);
769
+ case PM_FIND_PATTERN_NODE: {
770
+ if (((pm_find_pattern_node_t *)node)->constant == NULL) {
771
+ pm_buffer_append_u8(buffer, 0);
772
772
  } else {
773
- yp_serialize_node(parser, (yp_node_t *)((yp_find_pattern_node_t *)node)->constant, buffer);
773
+ pm_serialize_node(parser, (pm_node_t *)((pm_find_pattern_node_t *)node)->constant, buffer);
774
774
  }
775
- yp_serialize_node(parser, (yp_node_t *)((yp_find_pattern_node_t *)node)->left, buffer);
776
- uint32_t requireds_size = yp_sizet_to_u32(((yp_find_pattern_node_t *)node)->requireds.size);
777
- yp_buffer_append_u32(buffer, requireds_size);
775
+ pm_serialize_node(parser, (pm_node_t *)((pm_find_pattern_node_t *)node)->left, buffer);
776
+ uint32_t requireds_size = pm_sizet_to_u32(((pm_find_pattern_node_t *)node)->requireds.size);
777
+ pm_buffer_append_u32(buffer, requireds_size);
778
778
  for (uint32_t index = 0; index < requireds_size; index++) {
779
- yp_serialize_node(parser, (yp_node_t *) ((yp_find_pattern_node_t *)node)->requireds.nodes[index], buffer);
779
+ pm_serialize_node(parser, (pm_node_t *) ((pm_find_pattern_node_t *)node)->requireds.nodes[index], buffer);
780
780
  }
781
- yp_serialize_node(parser, (yp_node_t *)((yp_find_pattern_node_t *)node)->right, buffer);
782
- if (((yp_find_pattern_node_t *)node)->opening_loc.start == NULL) {
783
- yp_buffer_append_u8(buffer, 0);
781
+ pm_serialize_node(parser, (pm_node_t *)((pm_find_pattern_node_t *)node)->right, buffer);
782
+ if (((pm_find_pattern_node_t *)node)->opening_loc.start == NULL) {
783
+ pm_buffer_append_u8(buffer, 0);
784
784
  } else {
785
- yp_buffer_append_u8(buffer, 1);
786
- yp_serialize_location(parser, &((yp_find_pattern_node_t *)node)->opening_loc, buffer);
785
+ pm_buffer_append_u8(buffer, 1);
786
+ pm_serialize_location(parser, &((pm_find_pattern_node_t *)node)->opening_loc, buffer);
787
787
  }
788
- if (((yp_find_pattern_node_t *)node)->closing_loc.start == NULL) {
789
- yp_buffer_append_u8(buffer, 0);
788
+ if (((pm_find_pattern_node_t *)node)->closing_loc.start == NULL) {
789
+ pm_buffer_append_u8(buffer, 0);
790
790
  } else {
791
- yp_buffer_append_u8(buffer, 1);
792
- yp_serialize_location(parser, &((yp_find_pattern_node_t *)node)->closing_loc, buffer);
791
+ pm_buffer_append_u8(buffer, 1);
792
+ pm_serialize_location(parser, &((pm_find_pattern_node_t *)node)->closing_loc, buffer);
793
793
  }
794
794
  break;
795
795
  }
796
- case YP_FLIP_FLOP_NODE: {
797
- if (((yp_flip_flop_node_t *)node)->left == NULL) {
798
- yp_buffer_append_u8(buffer, 0);
796
+ case PM_FLIP_FLOP_NODE: {
797
+ if (((pm_flip_flop_node_t *)node)->left == NULL) {
798
+ pm_buffer_append_u8(buffer, 0);
799
799
  } else {
800
- yp_serialize_node(parser, (yp_node_t *)((yp_flip_flop_node_t *)node)->left, buffer);
800
+ pm_serialize_node(parser, (pm_node_t *)((pm_flip_flop_node_t *)node)->left, buffer);
801
801
  }
802
- if (((yp_flip_flop_node_t *)node)->right == NULL) {
803
- yp_buffer_append_u8(buffer, 0);
802
+ if (((pm_flip_flop_node_t *)node)->right == NULL) {
803
+ pm_buffer_append_u8(buffer, 0);
804
804
  } else {
805
- yp_serialize_node(parser, (yp_node_t *)((yp_flip_flop_node_t *)node)->right, buffer);
805
+ pm_serialize_node(parser, (pm_node_t *)((pm_flip_flop_node_t *)node)->right, buffer);
806
806
  }
807
- yp_serialize_location(parser, &((yp_flip_flop_node_t *)node)->operator_loc, buffer);
808
- yp_buffer_append_u32(buffer, node->flags >> 2);
807
+ pm_serialize_location(parser, &((pm_flip_flop_node_t *)node)->operator_loc, buffer);
808
+ pm_buffer_append_u32(buffer, node->flags >> 2);
809
809
  break;
810
810
  }
811
- case YP_FLOAT_NODE: {
811
+ case PM_FLOAT_NODE: {
812
812
  break;
813
813
  }
814
- case YP_FOR_NODE: {
815
- yp_serialize_node(parser, (yp_node_t *)((yp_for_node_t *)node)->index, buffer);
816
- yp_serialize_node(parser, (yp_node_t *)((yp_for_node_t *)node)->collection, buffer);
817
- if (((yp_for_node_t *)node)->statements == NULL) {
818
- yp_buffer_append_u8(buffer, 0);
814
+ case PM_FOR_NODE: {
815
+ pm_serialize_node(parser, (pm_node_t *)((pm_for_node_t *)node)->index, buffer);
816
+ pm_serialize_node(parser, (pm_node_t *)((pm_for_node_t *)node)->collection, buffer);
817
+ if (((pm_for_node_t *)node)->statements == NULL) {
818
+ pm_buffer_append_u8(buffer, 0);
819
819
  } else {
820
- yp_serialize_node(parser, (yp_node_t *)((yp_for_node_t *)node)->statements, buffer);
820
+ pm_serialize_node(parser, (pm_node_t *)((pm_for_node_t *)node)->statements, buffer);
821
821
  }
822
- yp_serialize_location(parser, &((yp_for_node_t *)node)->for_keyword_loc, buffer);
823
- yp_serialize_location(parser, &((yp_for_node_t *)node)->in_keyword_loc, buffer);
824
- if (((yp_for_node_t *)node)->do_keyword_loc.start == NULL) {
825
- yp_buffer_append_u8(buffer, 0);
822
+ pm_serialize_location(parser, &((pm_for_node_t *)node)->for_keyword_loc, buffer);
823
+ pm_serialize_location(parser, &((pm_for_node_t *)node)->in_keyword_loc, buffer);
824
+ if (((pm_for_node_t *)node)->do_keyword_loc.start == NULL) {
825
+ pm_buffer_append_u8(buffer, 0);
826
826
  } else {
827
- yp_buffer_append_u8(buffer, 1);
828
- yp_serialize_location(parser, &((yp_for_node_t *)node)->do_keyword_loc, buffer);
827
+ pm_buffer_append_u8(buffer, 1);
828
+ pm_serialize_location(parser, &((pm_for_node_t *)node)->do_keyword_loc, buffer);
829
829
  }
830
- yp_serialize_location(parser, &((yp_for_node_t *)node)->end_keyword_loc, buffer);
830
+ pm_serialize_location(parser, &((pm_for_node_t *)node)->end_keyword_loc, buffer);
831
831
  break;
832
832
  }
833
- case YP_FORWARDING_ARGUMENTS_NODE: {
833
+ case PM_FORWARDING_ARGUMENTS_NODE: {
834
834
  break;
835
835
  }
836
- case YP_FORWARDING_PARAMETER_NODE: {
836
+ case PM_FORWARDING_PARAMETER_NODE: {
837
837
  break;
838
838
  }
839
- case YP_FORWARDING_SUPER_NODE: {
840
- if (((yp_forwarding_super_node_t *)node)->block == NULL) {
841
- yp_buffer_append_u8(buffer, 0);
839
+ case PM_FORWARDING_SUPER_NODE: {
840
+ if (((pm_forwarding_super_node_t *)node)->block == NULL) {
841
+ pm_buffer_append_u8(buffer, 0);
842
842
  } else {
843
- yp_serialize_node(parser, (yp_node_t *)((yp_forwarding_super_node_t *)node)->block, buffer);
843
+ pm_serialize_node(parser, (pm_node_t *)((pm_forwarding_super_node_t *)node)->block, buffer);
844
844
  }
845
845
  break;
846
846
  }
847
- case YP_GLOBAL_VARIABLE_AND_WRITE_NODE: {
848
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_global_variable_and_write_node_t *)node)->name));
849
- yp_serialize_location(parser, &((yp_global_variable_and_write_node_t *)node)->name_loc, buffer);
850
- yp_serialize_location(parser, &((yp_global_variable_and_write_node_t *)node)->operator_loc, buffer);
851
- yp_serialize_node(parser, (yp_node_t *)((yp_global_variable_and_write_node_t *)node)->value, buffer);
847
+ case PM_GLOBAL_VARIABLE_AND_WRITE_NODE: {
848
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_global_variable_and_write_node_t *)node)->name));
849
+ pm_serialize_location(parser, &((pm_global_variable_and_write_node_t *)node)->name_loc, buffer);
850
+ pm_serialize_location(parser, &((pm_global_variable_and_write_node_t *)node)->operator_loc, buffer);
851
+ pm_serialize_node(parser, (pm_node_t *)((pm_global_variable_and_write_node_t *)node)->value, buffer);
852
852
  break;
853
853
  }
854
- case YP_GLOBAL_VARIABLE_OPERATOR_WRITE_NODE: {
855
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_global_variable_operator_write_node_t *)node)->name));
856
- yp_serialize_location(parser, &((yp_global_variable_operator_write_node_t *)node)->name_loc, buffer);
857
- yp_serialize_location(parser, &((yp_global_variable_operator_write_node_t *)node)->operator_loc, buffer);
858
- yp_serialize_node(parser, (yp_node_t *)((yp_global_variable_operator_write_node_t *)node)->value, buffer);
859
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_global_variable_operator_write_node_t *)node)->operator));
854
+ case PM_GLOBAL_VARIABLE_OPERATOR_WRITE_NODE: {
855
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_global_variable_operator_write_node_t *)node)->name));
856
+ pm_serialize_location(parser, &((pm_global_variable_operator_write_node_t *)node)->name_loc, buffer);
857
+ pm_serialize_location(parser, &((pm_global_variable_operator_write_node_t *)node)->operator_loc, buffer);
858
+ pm_serialize_node(parser, (pm_node_t *)((pm_global_variable_operator_write_node_t *)node)->value, buffer);
859
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_global_variable_operator_write_node_t *)node)->operator));
860
860
  break;
861
861
  }
862
- case YP_GLOBAL_VARIABLE_OR_WRITE_NODE: {
863
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_global_variable_or_write_node_t *)node)->name));
864
- yp_serialize_location(parser, &((yp_global_variable_or_write_node_t *)node)->name_loc, buffer);
865
- yp_serialize_location(parser, &((yp_global_variable_or_write_node_t *)node)->operator_loc, buffer);
866
- yp_serialize_node(parser, (yp_node_t *)((yp_global_variable_or_write_node_t *)node)->value, buffer);
862
+ case PM_GLOBAL_VARIABLE_OR_WRITE_NODE: {
863
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_global_variable_or_write_node_t *)node)->name));
864
+ pm_serialize_location(parser, &((pm_global_variable_or_write_node_t *)node)->name_loc, buffer);
865
+ pm_serialize_location(parser, &((pm_global_variable_or_write_node_t *)node)->operator_loc, buffer);
866
+ pm_serialize_node(parser, (pm_node_t *)((pm_global_variable_or_write_node_t *)node)->value, buffer);
867
867
  break;
868
868
  }
869
- case YP_GLOBAL_VARIABLE_READ_NODE: {
870
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_global_variable_read_node_t *)node)->name));
869
+ case PM_GLOBAL_VARIABLE_READ_NODE: {
870
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_global_variable_read_node_t *)node)->name));
871
871
  break;
872
872
  }
873
- case YP_GLOBAL_VARIABLE_TARGET_NODE: {
874
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_global_variable_target_node_t *)node)->name));
873
+ case PM_GLOBAL_VARIABLE_TARGET_NODE: {
874
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_global_variable_target_node_t *)node)->name));
875
875
  break;
876
876
  }
877
- case YP_GLOBAL_VARIABLE_WRITE_NODE: {
878
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_global_variable_write_node_t *)node)->name));
879
- yp_serialize_location(parser, &((yp_global_variable_write_node_t *)node)->name_loc, buffer);
880
- yp_serialize_node(parser, (yp_node_t *)((yp_global_variable_write_node_t *)node)->value, buffer);
881
- yp_serialize_location(parser, &((yp_global_variable_write_node_t *)node)->operator_loc, buffer);
877
+ case PM_GLOBAL_VARIABLE_WRITE_NODE: {
878
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_global_variable_write_node_t *)node)->name));
879
+ pm_serialize_location(parser, &((pm_global_variable_write_node_t *)node)->name_loc, buffer);
880
+ pm_serialize_node(parser, (pm_node_t *)((pm_global_variable_write_node_t *)node)->value, buffer);
881
+ pm_serialize_location(parser, &((pm_global_variable_write_node_t *)node)->operator_loc, buffer);
882
882
  break;
883
883
  }
884
- case YP_HASH_NODE: {
885
- yp_serialize_location(parser, &((yp_hash_node_t *)node)->opening_loc, buffer);
886
- uint32_t elements_size = yp_sizet_to_u32(((yp_hash_node_t *)node)->elements.size);
887
- yp_buffer_append_u32(buffer, elements_size);
884
+ case PM_HASH_NODE: {
885
+ pm_serialize_location(parser, &((pm_hash_node_t *)node)->opening_loc, buffer);
886
+ uint32_t elements_size = pm_sizet_to_u32(((pm_hash_node_t *)node)->elements.size);
887
+ pm_buffer_append_u32(buffer, elements_size);
888
888
  for (uint32_t index = 0; index < elements_size; index++) {
889
- yp_serialize_node(parser, (yp_node_t *) ((yp_hash_node_t *)node)->elements.nodes[index], buffer);
889
+ pm_serialize_node(parser, (pm_node_t *) ((pm_hash_node_t *)node)->elements.nodes[index], buffer);
890
890
  }
891
- yp_serialize_location(parser, &((yp_hash_node_t *)node)->closing_loc, buffer);
891
+ pm_serialize_location(parser, &((pm_hash_node_t *)node)->closing_loc, buffer);
892
892
  break;
893
893
  }
894
- case YP_HASH_PATTERN_NODE: {
895
- if (((yp_hash_pattern_node_t *)node)->constant == NULL) {
896
- yp_buffer_append_u8(buffer, 0);
894
+ case PM_HASH_PATTERN_NODE: {
895
+ if (((pm_hash_pattern_node_t *)node)->constant == NULL) {
896
+ pm_buffer_append_u8(buffer, 0);
897
897
  } else {
898
- yp_serialize_node(parser, (yp_node_t *)((yp_hash_pattern_node_t *)node)->constant, buffer);
898
+ pm_serialize_node(parser, (pm_node_t *)((pm_hash_pattern_node_t *)node)->constant, buffer);
899
899
  }
900
- uint32_t assocs_size = yp_sizet_to_u32(((yp_hash_pattern_node_t *)node)->assocs.size);
901
- yp_buffer_append_u32(buffer, assocs_size);
900
+ uint32_t assocs_size = pm_sizet_to_u32(((pm_hash_pattern_node_t *)node)->assocs.size);
901
+ pm_buffer_append_u32(buffer, assocs_size);
902
902
  for (uint32_t index = 0; index < assocs_size; index++) {
903
- yp_serialize_node(parser, (yp_node_t *) ((yp_hash_pattern_node_t *)node)->assocs.nodes[index], buffer);
903
+ pm_serialize_node(parser, (pm_node_t *) ((pm_hash_pattern_node_t *)node)->assocs.nodes[index], buffer);
904
904
  }
905
- if (((yp_hash_pattern_node_t *)node)->kwrest == NULL) {
906
- yp_buffer_append_u8(buffer, 0);
905
+ if (((pm_hash_pattern_node_t *)node)->kwrest == NULL) {
906
+ pm_buffer_append_u8(buffer, 0);
907
907
  } else {
908
- yp_serialize_node(parser, (yp_node_t *)((yp_hash_pattern_node_t *)node)->kwrest, buffer);
908
+ pm_serialize_node(parser, (pm_node_t *)((pm_hash_pattern_node_t *)node)->kwrest, buffer);
909
909
  }
910
- if (((yp_hash_pattern_node_t *)node)->opening_loc.start == NULL) {
911
- yp_buffer_append_u8(buffer, 0);
910
+ if (((pm_hash_pattern_node_t *)node)->opening_loc.start == NULL) {
911
+ pm_buffer_append_u8(buffer, 0);
912
912
  } else {
913
- yp_buffer_append_u8(buffer, 1);
914
- yp_serialize_location(parser, &((yp_hash_pattern_node_t *)node)->opening_loc, buffer);
913
+ pm_buffer_append_u8(buffer, 1);
914
+ pm_serialize_location(parser, &((pm_hash_pattern_node_t *)node)->opening_loc, buffer);
915
915
  }
916
- if (((yp_hash_pattern_node_t *)node)->closing_loc.start == NULL) {
917
- yp_buffer_append_u8(buffer, 0);
916
+ if (((pm_hash_pattern_node_t *)node)->closing_loc.start == NULL) {
917
+ pm_buffer_append_u8(buffer, 0);
918
918
  } else {
919
- yp_buffer_append_u8(buffer, 1);
920
- yp_serialize_location(parser, &((yp_hash_pattern_node_t *)node)->closing_loc, buffer);
919
+ pm_buffer_append_u8(buffer, 1);
920
+ pm_serialize_location(parser, &((pm_hash_pattern_node_t *)node)->closing_loc, buffer);
921
921
  }
922
922
  break;
923
923
  }
924
- case YP_IF_NODE: {
925
- if (((yp_if_node_t *)node)->if_keyword_loc.start == NULL) {
926
- yp_buffer_append_u8(buffer, 0);
924
+ case PM_IF_NODE: {
925
+ if (((pm_if_node_t *)node)->if_keyword_loc.start == NULL) {
926
+ pm_buffer_append_u8(buffer, 0);
927
927
  } else {
928
- yp_buffer_append_u8(buffer, 1);
929
- yp_serialize_location(parser, &((yp_if_node_t *)node)->if_keyword_loc, buffer);
928
+ pm_buffer_append_u8(buffer, 1);
929
+ pm_serialize_location(parser, &((pm_if_node_t *)node)->if_keyword_loc, buffer);
930
930
  }
931
- yp_serialize_node(parser, (yp_node_t *)((yp_if_node_t *)node)->predicate, buffer);
932
- if (((yp_if_node_t *)node)->statements == NULL) {
933
- yp_buffer_append_u8(buffer, 0);
931
+ pm_serialize_node(parser, (pm_node_t *)((pm_if_node_t *)node)->predicate, buffer);
932
+ if (((pm_if_node_t *)node)->statements == NULL) {
933
+ pm_buffer_append_u8(buffer, 0);
934
934
  } else {
935
- yp_serialize_node(parser, (yp_node_t *)((yp_if_node_t *)node)->statements, buffer);
935
+ pm_serialize_node(parser, (pm_node_t *)((pm_if_node_t *)node)->statements, buffer);
936
936
  }
937
- if (((yp_if_node_t *)node)->consequent == NULL) {
938
- yp_buffer_append_u8(buffer, 0);
937
+ if (((pm_if_node_t *)node)->consequent == NULL) {
938
+ pm_buffer_append_u8(buffer, 0);
939
939
  } else {
940
- yp_serialize_node(parser, (yp_node_t *)((yp_if_node_t *)node)->consequent, buffer);
940
+ pm_serialize_node(parser, (pm_node_t *)((pm_if_node_t *)node)->consequent, buffer);
941
941
  }
942
- if (((yp_if_node_t *)node)->end_keyword_loc.start == NULL) {
943
- yp_buffer_append_u8(buffer, 0);
942
+ if (((pm_if_node_t *)node)->end_keyword_loc.start == NULL) {
943
+ pm_buffer_append_u8(buffer, 0);
944
944
  } else {
945
- yp_buffer_append_u8(buffer, 1);
946
- yp_serialize_location(parser, &((yp_if_node_t *)node)->end_keyword_loc, buffer);
945
+ pm_buffer_append_u8(buffer, 1);
946
+ pm_serialize_location(parser, &((pm_if_node_t *)node)->end_keyword_loc, buffer);
947
947
  }
948
948
  break;
949
949
  }
950
- case YP_IMAGINARY_NODE: {
951
- yp_serialize_node(parser, (yp_node_t *)((yp_imaginary_node_t *)node)->numeric, buffer);
950
+ case PM_IMAGINARY_NODE: {
951
+ pm_serialize_node(parser, (pm_node_t *)((pm_imaginary_node_t *)node)->numeric, buffer);
952
952
  break;
953
953
  }
954
- case YP_IMPLICIT_NODE: {
955
- yp_serialize_node(parser, (yp_node_t *)((yp_implicit_node_t *)node)->value, buffer);
954
+ case PM_IMPLICIT_NODE: {
955
+ pm_serialize_node(parser, (pm_node_t *)((pm_implicit_node_t *)node)->value, buffer);
956
956
  break;
957
957
  }
958
- case YP_IN_NODE: {
959
- yp_serialize_node(parser, (yp_node_t *)((yp_in_node_t *)node)->pattern, buffer);
960
- if (((yp_in_node_t *)node)->statements == NULL) {
961
- yp_buffer_append_u8(buffer, 0);
958
+ case PM_IN_NODE: {
959
+ pm_serialize_node(parser, (pm_node_t *)((pm_in_node_t *)node)->pattern, buffer);
960
+ if (((pm_in_node_t *)node)->statements == NULL) {
961
+ pm_buffer_append_u8(buffer, 0);
962
962
  } else {
963
- yp_serialize_node(parser, (yp_node_t *)((yp_in_node_t *)node)->statements, buffer);
963
+ pm_serialize_node(parser, (pm_node_t *)((pm_in_node_t *)node)->statements, buffer);
964
964
  }
965
- yp_serialize_location(parser, &((yp_in_node_t *)node)->in_loc, buffer);
966
- if (((yp_in_node_t *)node)->then_loc.start == NULL) {
967
- yp_buffer_append_u8(buffer, 0);
965
+ pm_serialize_location(parser, &((pm_in_node_t *)node)->in_loc, buffer);
966
+ if (((pm_in_node_t *)node)->then_loc.start == NULL) {
967
+ pm_buffer_append_u8(buffer, 0);
968
968
  } else {
969
- yp_buffer_append_u8(buffer, 1);
970
- yp_serialize_location(parser, &((yp_in_node_t *)node)->then_loc, buffer);
969
+ pm_buffer_append_u8(buffer, 1);
970
+ pm_serialize_location(parser, &((pm_in_node_t *)node)->then_loc, buffer);
971
971
  }
972
972
  break;
973
973
  }
974
- case YP_INSTANCE_VARIABLE_AND_WRITE_NODE: {
975
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_instance_variable_and_write_node_t *)node)->name));
976
- yp_serialize_location(parser, &((yp_instance_variable_and_write_node_t *)node)->name_loc, buffer);
977
- yp_serialize_location(parser, &((yp_instance_variable_and_write_node_t *)node)->operator_loc, buffer);
978
- yp_serialize_node(parser, (yp_node_t *)((yp_instance_variable_and_write_node_t *)node)->value, buffer);
974
+ case PM_INSTANCE_VARIABLE_AND_WRITE_NODE: {
975
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_instance_variable_and_write_node_t *)node)->name));
976
+ pm_serialize_location(parser, &((pm_instance_variable_and_write_node_t *)node)->name_loc, buffer);
977
+ pm_serialize_location(parser, &((pm_instance_variable_and_write_node_t *)node)->operator_loc, buffer);
978
+ pm_serialize_node(parser, (pm_node_t *)((pm_instance_variable_and_write_node_t *)node)->value, buffer);
979
979
  break;
980
980
  }
981
- case YP_INSTANCE_VARIABLE_OPERATOR_WRITE_NODE: {
982
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_instance_variable_operator_write_node_t *)node)->name));
983
- yp_serialize_location(parser, &((yp_instance_variable_operator_write_node_t *)node)->name_loc, buffer);
984
- yp_serialize_location(parser, &((yp_instance_variable_operator_write_node_t *)node)->operator_loc, buffer);
985
- yp_serialize_node(parser, (yp_node_t *)((yp_instance_variable_operator_write_node_t *)node)->value, buffer);
986
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_instance_variable_operator_write_node_t *)node)->operator));
981
+ case PM_INSTANCE_VARIABLE_OPERATOR_WRITE_NODE: {
982
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_instance_variable_operator_write_node_t *)node)->name));
983
+ pm_serialize_location(parser, &((pm_instance_variable_operator_write_node_t *)node)->name_loc, buffer);
984
+ pm_serialize_location(parser, &((pm_instance_variable_operator_write_node_t *)node)->operator_loc, buffer);
985
+ pm_serialize_node(parser, (pm_node_t *)((pm_instance_variable_operator_write_node_t *)node)->value, buffer);
986
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_instance_variable_operator_write_node_t *)node)->operator));
987
987
  break;
988
988
  }
989
- case YP_INSTANCE_VARIABLE_OR_WRITE_NODE: {
990
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_instance_variable_or_write_node_t *)node)->name));
991
- yp_serialize_location(parser, &((yp_instance_variable_or_write_node_t *)node)->name_loc, buffer);
992
- yp_serialize_location(parser, &((yp_instance_variable_or_write_node_t *)node)->operator_loc, buffer);
993
- yp_serialize_node(parser, (yp_node_t *)((yp_instance_variable_or_write_node_t *)node)->value, buffer);
989
+ case PM_INSTANCE_VARIABLE_OR_WRITE_NODE: {
990
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_instance_variable_or_write_node_t *)node)->name));
991
+ pm_serialize_location(parser, &((pm_instance_variable_or_write_node_t *)node)->name_loc, buffer);
992
+ pm_serialize_location(parser, &((pm_instance_variable_or_write_node_t *)node)->operator_loc, buffer);
993
+ pm_serialize_node(parser, (pm_node_t *)((pm_instance_variable_or_write_node_t *)node)->value, buffer);
994
994
  break;
995
995
  }
996
- case YP_INSTANCE_VARIABLE_READ_NODE: {
997
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_instance_variable_read_node_t *)node)->name));
996
+ case PM_INSTANCE_VARIABLE_READ_NODE: {
997
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_instance_variable_read_node_t *)node)->name));
998
998
  break;
999
999
  }
1000
- case YP_INSTANCE_VARIABLE_TARGET_NODE: {
1001
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_instance_variable_target_node_t *)node)->name));
1000
+ case PM_INSTANCE_VARIABLE_TARGET_NODE: {
1001
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_instance_variable_target_node_t *)node)->name));
1002
1002
  break;
1003
1003
  }
1004
- case YP_INSTANCE_VARIABLE_WRITE_NODE: {
1005
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_instance_variable_write_node_t *)node)->name));
1006
- yp_serialize_location(parser, &((yp_instance_variable_write_node_t *)node)->name_loc, buffer);
1007
- yp_serialize_node(parser, (yp_node_t *)((yp_instance_variable_write_node_t *)node)->value, buffer);
1008
- yp_serialize_location(parser, &((yp_instance_variable_write_node_t *)node)->operator_loc, buffer);
1004
+ case PM_INSTANCE_VARIABLE_WRITE_NODE: {
1005
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_instance_variable_write_node_t *)node)->name));
1006
+ pm_serialize_location(parser, &((pm_instance_variable_write_node_t *)node)->name_loc, buffer);
1007
+ pm_serialize_node(parser, (pm_node_t *)((pm_instance_variable_write_node_t *)node)->value, buffer);
1008
+ pm_serialize_location(parser, &((pm_instance_variable_write_node_t *)node)->operator_loc, buffer);
1009
1009
  break;
1010
1010
  }
1011
- case YP_INTEGER_NODE: {
1012
- yp_buffer_append_u32(buffer, node->flags >> 2);
1011
+ case PM_INTEGER_NODE: {
1012
+ pm_buffer_append_u32(buffer, node->flags >> 2);
1013
1013
  break;
1014
1014
  }
1015
- case YP_INTERPOLATED_MATCH_LAST_LINE_NODE: {
1016
- yp_serialize_location(parser, &((yp_interpolated_match_last_line_node_t *)node)->opening_loc, buffer);
1017
- uint32_t parts_size = yp_sizet_to_u32(((yp_interpolated_match_last_line_node_t *)node)->parts.size);
1018
- yp_buffer_append_u32(buffer, parts_size);
1015
+ case PM_INTERPOLATED_MATCH_LAST_LINE_NODE: {
1016
+ pm_serialize_location(parser, &((pm_interpolated_match_last_line_node_t *)node)->opening_loc, buffer);
1017
+ uint32_t parts_size = pm_sizet_to_u32(((pm_interpolated_match_last_line_node_t *)node)->parts.size);
1018
+ pm_buffer_append_u32(buffer, parts_size);
1019
1019
  for (uint32_t index = 0; index < parts_size; index++) {
1020
- yp_serialize_node(parser, (yp_node_t *) ((yp_interpolated_match_last_line_node_t *)node)->parts.nodes[index], buffer);
1020
+ pm_serialize_node(parser, (pm_node_t *) ((pm_interpolated_match_last_line_node_t *)node)->parts.nodes[index], buffer);
1021
1021
  }
1022
- yp_serialize_location(parser, &((yp_interpolated_match_last_line_node_t *)node)->closing_loc, buffer);
1023
- yp_buffer_append_u32(buffer, node->flags >> 2);
1022
+ pm_serialize_location(parser, &((pm_interpolated_match_last_line_node_t *)node)->closing_loc, buffer);
1023
+ pm_buffer_append_u32(buffer, node->flags >> 2);
1024
1024
  break;
1025
1025
  }
1026
- case YP_INTERPOLATED_REGULAR_EXPRESSION_NODE: {
1027
- yp_serialize_location(parser, &((yp_interpolated_regular_expression_node_t *)node)->opening_loc, buffer);
1028
- uint32_t parts_size = yp_sizet_to_u32(((yp_interpolated_regular_expression_node_t *)node)->parts.size);
1029
- yp_buffer_append_u32(buffer, parts_size);
1026
+ case PM_INTERPOLATED_REGULAR_EXPRESSION_NODE: {
1027
+ pm_serialize_location(parser, &((pm_interpolated_regular_expression_node_t *)node)->opening_loc, buffer);
1028
+ uint32_t parts_size = pm_sizet_to_u32(((pm_interpolated_regular_expression_node_t *)node)->parts.size);
1029
+ pm_buffer_append_u32(buffer, parts_size);
1030
1030
  for (uint32_t index = 0; index < parts_size; index++) {
1031
- yp_serialize_node(parser, (yp_node_t *) ((yp_interpolated_regular_expression_node_t *)node)->parts.nodes[index], buffer);
1031
+ pm_serialize_node(parser, (pm_node_t *) ((pm_interpolated_regular_expression_node_t *)node)->parts.nodes[index], buffer);
1032
1032
  }
1033
- yp_serialize_location(parser, &((yp_interpolated_regular_expression_node_t *)node)->closing_loc, buffer);
1034
- yp_buffer_append_u32(buffer, node->flags >> 2);
1033
+ pm_serialize_location(parser, &((pm_interpolated_regular_expression_node_t *)node)->closing_loc, buffer);
1034
+ pm_buffer_append_u32(buffer, node->flags >> 2);
1035
1035
  break;
1036
1036
  }
1037
- case YP_INTERPOLATED_STRING_NODE: {
1038
- if (((yp_interpolated_string_node_t *)node)->opening_loc.start == NULL) {
1039
- yp_buffer_append_u8(buffer, 0);
1037
+ case PM_INTERPOLATED_STRING_NODE: {
1038
+ if (((pm_interpolated_string_node_t *)node)->opening_loc.start == NULL) {
1039
+ pm_buffer_append_u8(buffer, 0);
1040
1040
  } else {
1041
- yp_buffer_append_u8(buffer, 1);
1042
- yp_serialize_location(parser, &((yp_interpolated_string_node_t *)node)->opening_loc, buffer);
1041
+ pm_buffer_append_u8(buffer, 1);
1042
+ pm_serialize_location(parser, &((pm_interpolated_string_node_t *)node)->opening_loc, buffer);
1043
1043
  }
1044
- uint32_t parts_size = yp_sizet_to_u32(((yp_interpolated_string_node_t *)node)->parts.size);
1045
- yp_buffer_append_u32(buffer, parts_size);
1044
+ uint32_t parts_size = pm_sizet_to_u32(((pm_interpolated_string_node_t *)node)->parts.size);
1045
+ pm_buffer_append_u32(buffer, parts_size);
1046
1046
  for (uint32_t index = 0; index < parts_size; index++) {
1047
- yp_serialize_node(parser, (yp_node_t *) ((yp_interpolated_string_node_t *)node)->parts.nodes[index], buffer);
1047
+ pm_serialize_node(parser, (pm_node_t *) ((pm_interpolated_string_node_t *)node)->parts.nodes[index], buffer);
1048
1048
  }
1049
- if (((yp_interpolated_string_node_t *)node)->closing_loc.start == NULL) {
1050
- yp_buffer_append_u8(buffer, 0);
1049
+ if (((pm_interpolated_string_node_t *)node)->closing_loc.start == NULL) {
1050
+ pm_buffer_append_u8(buffer, 0);
1051
1051
  } else {
1052
- yp_buffer_append_u8(buffer, 1);
1053
- yp_serialize_location(parser, &((yp_interpolated_string_node_t *)node)->closing_loc, buffer);
1052
+ pm_buffer_append_u8(buffer, 1);
1053
+ pm_serialize_location(parser, &((pm_interpolated_string_node_t *)node)->closing_loc, buffer);
1054
1054
  }
1055
1055
  break;
1056
1056
  }
1057
- case YP_INTERPOLATED_SYMBOL_NODE: {
1058
- if (((yp_interpolated_symbol_node_t *)node)->opening_loc.start == NULL) {
1059
- yp_buffer_append_u8(buffer, 0);
1057
+ case PM_INTERPOLATED_SYMBOL_NODE: {
1058
+ if (((pm_interpolated_symbol_node_t *)node)->opening_loc.start == NULL) {
1059
+ pm_buffer_append_u8(buffer, 0);
1060
1060
  } else {
1061
- yp_buffer_append_u8(buffer, 1);
1062
- yp_serialize_location(parser, &((yp_interpolated_symbol_node_t *)node)->opening_loc, buffer);
1061
+ pm_buffer_append_u8(buffer, 1);
1062
+ pm_serialize_location(parser, &((pm_interpolated_symbol_node_t *)node)->opening_loc, buffer);
1063
1063
  }
1064
- uint32_t parts_size = yp_sizet_to_u32(((yp_interpolated_symbol_node_t *)node)->parts.size);
1065
- yp_buffer_append_u32(buffer, parts_size);
1064
+ uint32_t parts_size = pm_sizet_to_u32(((pm_interpolated_symbol_node_t *)node)->parts.size);
1065
+ pm_buffer_append_u32(buffer, parts_size);
1066
1066
  for (uint32_t index = 0; index < parts_size; index++) {
1067
- yp_serialize_node(parser, (yp_node_t *) ((yp_interpolated_symbol_node_t *)node)->parts.nodes[index], buffer);
1067
+ pm_serialize_node(parser, (pm_node_t *) ((pm_interpolated_symbol_node_t *)node)->parts.nodes[index], buffer);
1068
1068
  }
1069
- if (((yp_interpolated_symbol_node_t *)node)->closing_loc.start == NULL) {
1070
- yp_buffer_append_u8(buffer, 0);
1069
+ if (((pm_interpolated_symbol_node_t *)node)->closing_loc.start == NULL) {
1070
+ pm_buffer_append_u8(buffer, 0);
1071
1071
  } else {
1072
- yp_buffer_append_u8(buffer, 1);
1073
- yp_serialize_location(parser, &((yp_interpolated_symbol_node_t *)node)->closing_loc, buffer);
1072
+ pm_buffer_append_u8(buffer, 1);
1073
+ pm_serialize_location(parser, &((pm_interpolated_symbol_node_t *)node)->closing_loc, buffer);
1074
1074
  }
1075
1075
  break;
1076
1076
  }
1077
- case YP_INTERPOLATED_X_STRING_NODE: {
1078
- yp_serialize_location(parser, &((yp_interpolated_x_string_node_t *)node)->opening_loc, buffer);
1079
- uint32_t parts_size = yp_sizet_to_u32(((yp_interpolated_x_string_node_t *)node)->parts.size);
1080
- yp_buffer_append_u32(buffer, parts_size);
1077
+ case PM_INTERPOLATED_X_STRING_NODE: {
1078
+ pm_serialize_location(parser, &((pm_interpolated_x_string_node_t *)node)->opening_loc, buffer);
1079
+ uint32_t parts_size = pm_sizet_to_u32(((pm_interpolated_x_string_node_t *)node)->parts.size);
1080
+ pm_buffer_append_u32(buffer, parts_size);
1081
1081
  for (uint32_t index = 0; index < parts_size; index++) {
1082
- yp_serialize_node(parser, (yp_node_t *) ((yp_interpolated_x_string_node_t *)node)->parts.nodes[index], buffer);
1082
+ pm_serialize_node(parser, (pm_node_t *) ((pm_interpolated_x_string_node_t *)node)->parts.nodes[index], buffer);
1083
1083
  }
1084
- yp_serialize_location(parser, &((yp_interpolated_x_string_node_t *)node)->closing_loc, buffer);
1084
+ pm_serialize_location(parser, &((pm_interpolated_x_string_node_t *)node)->closing_loc, buffer);
1085
1085
  break;
1086
1086
  }
1087
- case YP_KEYWORD_HASH_NODE: {
1088
- uint32_t elements_size = yp_sizet_to_u32(((yp_keyword_hash_node_t *)node)->elements.size);
1089
- yp_buffer_append_u32(buffer, elements_size);
1087
+ case PM_KEYWORD_HASH_NODE: {
1088
+ uint32_t elements_size = pm_sizet_to_u32(((pm_keyword_hash_node_t *)node)->elements.size);
1089
+ pm_buffer_append_u32(buffer, elements_size);
1090
1090
  for (uint32_t index = 0; index < elements_size; index++) {
1091
- yp_serialize_node(parser, (yp_node_t *) ((yp_keyword_hash_node_t *)node)->elements.nodes[index], buffer);
1091
+ pm_serialize_node(parser, (pm_node_t *) ((pm_keyword_hash_node_t *)node)->elements.nodes[index], buffer);
1092
1092
  }
1093
1093
  break;
1094
1094
  }
1095
- case YP_KEYWORD_PARAMETER_NODE: {
1096
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_keyword_parameter_node_t *)node)->name));
1097
- yp_serialize_location(parser, &((yp_keyword_parameter_node_t *)node)->name_loc, buffer);
1098
- if (((yp_keyword_parameter_node_t *)node)->value == NULL) {
1099
- yp_buffer_append_u8(buffer, 0);
1095
+ case PM_KEYWORD_PARAMETER_NODE: {
1096
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_keyword_parameter_node_t *)node)->name));
1097
+ pm_serialize_location(parser, &((pm_keyword_parameter_node_t *)node)->name_loc, buffer);
1098
+ if (((pm_keyword_parameter_node_t *)node)->value == NULL) {
1099
+ pm_buffer_append_u8(buffer, 0);
1100
1100
  } else {
1101
- yp_serialize_node(parser, (yp_node_t *)((yp_keyword_parameter_node_t *)node)->value, buffer);
1101
+ pm_serialize_node(parser, (pm_node_t *)((pm_keyword_parameter_node_t *)node)->value, buffer);
1102
1102
  }
1103
1103
  break;
1104
1104
  }
1105
- case YP_KEYWORD_REST_PARAMETER_NODE: {
1106
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_keyword_rest_parameter_node_t *)node)->name));
1107
- if (((yp_keyword_rest_parameter_node_t *)node)->name_loc.start == NULL) {
1108
- yp_buffer_append_u8(buffer, 0);
1105
+ case PM_KEYWORD_REST_PARAMETER_NODE: {
1106
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_keyword_rest_parameter_node_t *)node)->name));
1107
+ if (((pm_keyword_rest_parameter_node_t *)node)->name_loc.start == NULL) {
1108
+ pm_buffer_append_u8(buffer, 0);
1109
1109
  } else {
1110
- yp_buffer_append_u8(buffer, 1);
1111
- yp_serialize_location(parser, &((yp_keyword_rest_parameter_node_t *)node)->name_loc, buffer);
1110
+ pm_buffer_append_u8(buffer, 1);
1111
+ pm_serialize_location(parser, &((pm_keyword_rest_parameter_node_t *)node)->name_loc, buffer);
1112
1112
  }
1113
- yp_serialize_location(parser, &((yp_keyword_rest_parameter_node_t *)node)->operator_loc, buffer);
1113
+ pm_serialize_location(parser, &((pm_keyword_rest_parameter_node_t *)node)->operator_loc, buffer);
1114
1114
  break;
1115
1115
  }
1116
- case YP_LAMBDA_NODE: {
1117
- uint32_t locals_size = yp_sizet_to_u32(((yp_lambda_node_t *)node)->locals.size);
1118
- yp_buffer_append_u32(buffer, locals_size);
1116
+ case PM_LAMBDA_NODE: {
1117
+ uint32_t locals_size = pm_sizet_to_u32(((pm_lambda_node_t *)node)->locals.size);
1118
+ pm_buffer_append_u32(buffer, locals_size);
1119
1119
  for (uint32_t index = 0; index < locals_size; index++) {
1120
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_lambda_node_t *)node)->locals.ids[index]));
1120
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_lambda_node_t *)node)->locals.ids[index]));
1121
1121
  }
1122
- yp_serialize_location(parser, &((yp_lambda_node_t *)node)->operator_loc, buffer);
1123
- yp_serialize_location(parser, &((yp_lambda_node_t *)node)->opening_loc, buffer);
1124
- yp_serialize_location(parser, &((yp_lambda_node_t *)node)->closing_loc, buffer);
1125
- if (((yp_lambda_node_t *)node)->parameters == NULL) {
1126
- yp_buffer_append_u8(buffer, 0);
1122
+ pm_serialize_location(parser, &((pm_lambda_node_t *)node)->operator_loc, buffer);
1123
+ pm_serialize_location(parser, &((pm_lambda_node_t *)node)->opening_loc, buffer);
1124
+ pm_serialize_location(parser, &((pm_lambda_node_t *)node)->closing_loc, buffer);
1125
+ if (((pm_lambda_node_t *)node)->parameters == NULL) {
1126
+ pm_buffer_append_u8(buffer, 0);
1127
1127
  } else {
1128
- yp_serialize_node(parser, (yp_node_t *)((yp_lambda_node_t *)node)->parameters, buffer);
1128
+ pm_serialize_node(parser, (pm_node_t *)((pm_lambda_node_t *)node)->parameters, buffer);
1129
1129
  }
1130
- if (((yp_lambda_node_t *)node)->body == NULL) {
1131
- yp_buffer_append_u8(buffer, 0);
1130
+ if (((pm_lambda_node_t *)node)->body == NULL) {
1131
+ pm_buffer_append_u8(buffer, 0);
1132
1132
  } else {
1133
- yp_serialize_node(parser, (yp_node_t *)((yp_lambda_node_t *)node)->body, buffer);
1133
+ pm_serialize_node(parser, (pm_node_t *)((pm_lambda_node_t *)node)->body, buffer);
1134
1134
  }
1135
1135
  break;
1136
1136
  }
1137
- case YP_LOCAL_VARIABLE_AND_WRITE_NODE: {
1138
- yp_serialize_location(parser, &((yp_local_variable_and_write_node_t *)node)->name_loc, buffer);
1139
- yp_serialize_location(parser, &((yp_local_variable_and_write_node_t *)node)->operator_loc, buffer);
1140
- yp_serialize_node(parser, (yp_node_t *)((yp_local_variable_and_write_node_t *)node)->value, buffer);
1141
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_local_variable_and_write_node_t *)node)->name));
1142
- yp_buffer_append_u32(buffer, ((yp_local_variable_and_write_node_t *)node)->depth);
1137
+ case PM_LOCAL_VARIABLE_AND_WRITE_NODE: {
1138
+ pm_serialize_location(parser, &((pm_local_variable_and_write_node_t *)node)->name_loc, buffer);
1139
+ pm_serialize_location(parser, &((pm_local_variable_and_write_node_t *)node)->operator_loc, buffer);
1140
+ pm_serialize_node(parser, (pm_node_t *)((pm_local_variable_and_write_node_t *)node)->value, buffer);
1141
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_local_variable_and_write_node_t *)node)->name));
1142
+ pm_buffer_append_u32(buffer, ((pm_local_variable_and_write_node_t *)node)->depth);
1143
1143
  break;
1144
1144
  }
1145
- case YP_LOCAL_VARIABLE_OPERATOR_WRITE_NODE: {
1146
- yp_serialize_location(parser, &((yp_local_variable_operator_write_node_t *)node)->name_loc, buffer);
1147
- yp_serialize_location(parser, &((yp_local_variable_operator_write_node_t *)node)->operator_loc, buffer);
1148
- yp_serialize_node(parser, (yp_node_t *)((yp_local_variable_operator_write_node_t *)node)->value, buffer);
1149
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_local_variable_operator_write_node_t *)node)->name));
1150
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_local_variable_operator_write_node_t *)node)->operator));
1151
- yp_buffer_append_u32(buffer, ((yp_local_variable_operator_write_node_t *)node)->depth);
1145
+ case PM_LOCAL_VARIABLE_OPERATOR_WRITE_NODE: {
1146
+ pm_serialize_location(parser, &((pm_local_variable_operator_write_node_t *)node)->name_loc, buffer);
1147
+ pm_serialize_location(parser, &((pm_local_variable_operator_write_node_t *)node)->operator_loc, buffer);
1148
+ pm_serialize_node(parser, (pm_node_t *)((pm_local_variable_operator_write_node_t *)node)->value, buffer);
1149
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_local_variable_operator_write_node_t *)node)->name));
1150
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_local_variable_operator_write_node_t *)node)->operator));
1151
+ pm_buffer_append_u32(buffer, ((pm_local_variable_operator_write_node_t *)node)->depth);
1152
1152
  break;
1153
1153
  }
1154
- case YP_LOCAL_VARIABLE_OR_WRITE_NODE: {
1155
- yp_serialize_location(parser, &((yp_local_variable_or_write_node_t *)node)->name_loc, buffer);
1156
- yp_serialize_location(parser, &((yp_local_variable_or_write_node_t *)node)->operator_loc, buffer);
1157
- yp_serialize_node(parser, (yp_node_t *)((yp_local_variable_or_write_node_t *)node)->value, buffer);
1158
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_local_variable_or_write_node_t *)node)->name));
1159
- yp_buffer_append_u32(buffer, ((yp_local_variable_or_write_node_t *)node)->depth);
1154
+ case PM_LOCAL_VARIABLE_OR_WRITE_NODE: {
1155
+ pm_serialize_location(parser, &((pm_local_variable_or_write_node_t *)node)->name_loc, buffer);
1156
+ pm_serialize_location(parser, &((pm_local_variable_or_write_node_t *)node)->operator_loc, buffer);
1157
+ pm_serialize_node(parser, (pm_node_t *)((pm_local_variable_or_write_node_t *)node)->value, buffer);
1158
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_local_variable_or_write_node_t *)node)->name));
1159
+ pm_buffer_append_u32(buffer, ((pm_local_variable_or_write_node_t *)node)->depth);
1160
1160
  break;
1161
1161
  }
1162
- case YP_LOCAL_VARIABLE_READ_NODE: {
1163
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_local_variable_read_node_t *)node)->name));
1164
- yp_buffer_append_u32(buffer, ((yp_local_variable_read_node_t *)node)->depth);
1162
+ case PM_LOCAL_VARIABLE_READ_NODE: {
1163
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_local_variable_read_node_t *)node)->name));
1164
+ pm_buffer_append_u32(buffer, ((pm_local_variable_read_node_t *)node)->depth);
1165
1165
  break;
1166
1166
  }
1167
- case YP_LOCAL_VARIABLE_TARGET_NODE: {
1168
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_local_variable_target_node_t *)node)->name));
1169
- yp_buffer_append_u32(buffer, ((yp_local_variable_target_node_t *)node)->depth);
1167
+ case PM_LOCAL_VARIABLE_TARGET_NODE: {
1168
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_local_variable_target_node_t *)node)->name));
1169
+ pm_buffer_append_u32(buffer, ((pm_local_variable_target_node_t *)node)->depth);
1170
1170
  break;
1171
1171
  }
1172
- case YP_LOCAL_VARIABLE_WRITE_NODE: {
1173
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_local_variable_write_node_t *)node)->name));
1174
- yp_buffer_append_u32(buffer, ((yp_local_variable_write_node_t *)node)->depth);
1175
- yp_serialize_location(parser, &((yp_local_variable_write_node_t *)node)->name_loc, buffer);
1176
- yp_serialize_node(parser, (yp_node_t *)((yp_local_variable_write_node_t *)node)->value, buffer);
1177
- yp_serialize_location(parser, &((yp_local_variable_write_node_t *)node)->operator_loc, buffer);
1172
+ case PM_LOCAL_VARIABLE_WRITE_NODE: {
1173
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_local_variable_write_node_t *)node)->name));
1174
+ pm_buffer_append_u32(buffer, ((pm_local_variable_write_node_t *)node)->depth);
1175
+ pm_serialize_location(parser, &((pm_local_variable_write_node_t *)node)->name_loc, buffer);
1176
+ pm_serialize_node(parser, (pm_node_t *)((pm_local_variable_write_node_t *)node)->value, buffer);
1177
+ pm_serialize_location(parser, &((pm_local_variable_write_node_t *)node)->operator_loc, buffer);
1178
1178
  break;
1179
1179
  }
1180
- case YP_MATCH_LAST_LINE_NODE: {
1181
- yp_serialize_location(parser, &((yp_match_last_line_node_t *)node)->opening_loc, buffer);
1182
- yp_serialize_location(parser, &((yp_match_last_line_node_t *)node)->content_loc, buffer);
1183
- yp_serialize_location(parser, &((yp_match_last_line_node_t *)node)->closing_loc, buffer);
1184
- yp_serialize_string(parser, &((yp_match_last_line_node_t *)node)->unescaped, buffer);
1185
- yp_buffer_append_u32(buffer, node->flags >> 2);
1180
+ case PM_MATCH_LAST_LINE_NODE: {
1181
+ pm_serialize_location(parser, &((pm_match_last_line_node_t *)node)->opening_loc, buffer);
1182
+ pm_serialize_location(parser, &((pm_match_last_line_node_t *)node)->content_loc, buffer);
1183
+ pm_serialize_location(parser, &((pm_match_last_line_node_t *)node)->closing_loc, buffer);
1184
+ pm_serialize_string(parser, &((pm_match_last_line_node_t *)node)->unescaped, buffer);
1185
+ pm_buffer_append_u32(buffer, node->flags >> 2);
1186
1186
  break;
1187
1187
  }
1188
- case YP_MATCH_PREDICATE_NODE: {
1189
- yp_serialize_node(parser, (yp_node_t *)((yp_match_predicate_node_t *)node)->value, buffer);
1190
- yp_serialize_node(parser, (yp_node_t *)((yp_match_predicate_node_t *)node)->pattern, buffer);
1191
- yp_serialize_location(parser, &((yp_match_predicate_node_t *)node)->operator_loc, buffer);
1188
+ case PM_MATCH_PREDICATE_NODE: {
1189
+ pm_serialize_node(parser, (pm_node_t *)((pm_match_predicate_node_t *)node)->value, buffer);
1190
+ pm_serialize_node(parser, (pm_node_t *)((pm_match_predicate_node_t *)node)->pattern, buffer);
1191
+ pm_serialize_location(parser, &((pm_match_predicate_node_t *)node)->operator_loc, buffer);
1192
1192
  break;
1193
1193
  }
1194
- case YP_MATCH_REQUIRED_NODE: {
1195
- yp_serialize_node(parser, (yp_node_t *)((yp_match_required_node_t *)node)->value, buffer);
1196
- yp_serialize_node(parser, (yp_node_t *)((yp_match_required_node_t *)node)->pattern, buffer);
1197
- yp_serialize_location(parser, &((yp_match_required_node_t *)node)->operator_loc, buffer);
1194
+ case PM_MATCH_REQUIRED_NODE: {
1195
+ pm_serialize_node(parser, (pm_node_t *)((pm_match_required_node_t *)node)->value, buffer);
1196
+ pm_serialize_node(parser, (pm_node_t *)((pm_match_required_node_t *)node)->pattern, buffer);
1197
+ pm_serialize_location(parser, &((pm_match_required_node_t *)node)->operator_loc, buffer);
1198
1198
  break;
1199
1199
  }
1200
- case YP_MATCH_WRITE_NODE: {
1201
- yp_serialize_node(parser, (yp_node_t *)((yp_match_write_node_t *)node)->call, buffer);
1202
- uint32_t locals_size = yp_sizet_to_u32(((yp_match_write_node_t *)node)->locals.size);
1203
- yp_buffer_append_u32(buffer, locals_size);
1200
+ case PM_MATCH_WRITE_NODE: {
1201
+ pm_serialize_node(parser, (pm_node_t *)((pm_match_write_node_t *)node)->call, buffer);
1202
+ uint32_t locals_size = pm_sizet_to_u32(((pm_match_write_node_t *)node)->locals.size);
1203
+ pm_buffer_append_u32(buffer, locals_size);
1204
1204
  for (uint32_t index = 0; index < locals_size; index++) {
1205
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_match_write_node_t *)node)->locals.ids[index]));
1205
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_match_write_node_t *)node)->locals.ids[index]));
1206
1206
  }
1207
1207
  break;
1208
1208
  }
1209
- case YP_MISSING_NODE: {
1209
+ case PM_MISSING_NODE: {
1210
1210
  break;
1211
1211
  }
1212
- case YP_MODULE_NODE: {
1213
- uint32_t locals_size = yp_sizet_to_u32(((yp_module_node_t *)node)->locals.size);
1214
- yp_buffer_append_u32(buffer, locals_size);
1212
+ case PM_MODULE_NODE: {
1213
+ uint32_t locals_size = pm_sizet_to_u32(((pm_module_node_t *)node)->locals.size);
1214
+ pm_buffer_append_u32(buffer, locals_size);
1215
1215
  for (uint32_t index = 0; index < locals_size; index++) {
1216
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_module_node_t *)node)->locals.ids[index]));
1216
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_module_node_t *)node)->locals.ids[index]));
1217
1217
  }
1218
- yp_serialize_location(parser, &((yp_module_node_t *)node)->module_keyword_loc, buffer);
1219
- yp_serialize_node(parser, (yp_node_t *)((yp_module_node_t *)node)->constant_path, buffer);
1220
- if (((yp_module_node_t *)node)->body == NULL) {
1221
- yp_buffer_append_u8(buffer, 0);
1218
+ pm_serialize_location(parser, &((pm_module_node_t *)node)->module_keyword_loc, buffer);
1219
+ pm_serialize_node(parser, (pm_node_t *)((pm_module_node_t *)node)->constant_path, buffer);
1220
+ if (((pm_module_node_t *)node)->body == NULL) {
1221
+ pm_buffer_append_u8(buffer, 0);
1222
1222
  } else {
1223
- yp_serialize_node(parser, (yp_node_t *)((yp_module_node_t *)node)->body, buffer);
1223
+ pm_serialize_node(parser, (pm_node_t *)((pm_module_node_t *)node)->body, buffer);
1224
1224
  }
1225
- yp_serialize_location(parser, &((yp_module_node_t *)node)->end_keyword_loc, buffer);
1226
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_module_node_t *)node)->name));
1225
+ pm_serialize_location(parser, &((pm_module_node_t *)node)->end_keyword_loc, buffer);
1226
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_module_node_t *)node)->name));
1227
1227
  break;
1228
1228
  }
1229
- case YP_MULTI_TARGET_NODE: {
1230
- uint32_t targets_size = yp_sizet_to_u32(((yp_multi_target_node_t *)node)->targets.size);
1231
- yp_buffer_append_u32(buffer, targets_size);
1229
+ case PM_MULTI_TARGET_NODE: {
1230
+ uint32_t targets_size = pm_sizet_to_u32(((pm_multi_target_node_t *)node)->targets.size);
1231
+ pm_buffer_append_u32(buffer, targets_size);
1232
1232
  for (uint32_t index = 0; index < targets_size; index++) {
1233
- yp_serialize_node(parser, (yp_node_t *) ((yp_multi_target_node_t *)node)->targets.nodes[index], buffer);
1233
+ pm_serialize_node(parser, (pm_node_t *) ((pm_multi_target_node_t *)node)->targets.nodes[index], buffer);
1234
1234
  }
1235
- if (((yp_multi_target_node_t *)node)->lparen_loc.start == NULL) {
1236
- yp_buffer_append_u8(buffer, 0);
1235
+ if (((pm_multi_target_node_t *)node)->lparen_loc.start == NULL) {
1236
+ pm_buffer_append_u8(buffer, 0);
1237
1237
  } else {
1238
- yp_buffer_append_u8(buffer, 1);
1239
- yp_serialize_location(parser, &((yp_multi_target_node_t *)node)->lparen_loc, buffer);
1238
+ pm_buffer_append_u8(buffer, 1);
1239
+ pm_serialize_location(parser, &((pm_multi_target_node_t *)node)->lparen_loc, buffer);
1240
1240
  }
1241
- if (((yp_multi_target_node_t *)node)->rparen_loc.start == NULL) {
1242
- yp_buffer_append_u8(buffer, 0);
1241
+ if (((pm_multi_target_node_t *)node)->rparen_loc.start == NULL) {
1242
+ pm_buffer_append_u8(buffer, 0);
1243
1243
  } else {
1244
- yp_buffer_append_u8(buffer, 1);
1245
- yp_serialize_location(parser, &((yp_multi_target_node_t *)node)->rparen_loc, buffer);
1244
+ pm_buffer_append_u8(buffer, 1);
1245
+ pm_serialize_location(parser, &((pm_multi_target_node_t *)node)->rparen_loc, buffer);
1246
1246
  }
1247
1247
  break;
1248
1248
  }
1249
- case YP_MULTI_WRITE_NODE: {
1250
- uint32_t targets_size = yp_sizet_to_u32(((yp_multi_write_node_t *)node)->targets.size);
1251
- yp_buffer_append_u32(buffer, targets_size);
1249
+ case PM_MULTI_WRITE_NODE: {
1250
+ uint32_t targets_size = pm_sizet_to_u32(((pm_multi_write_node_t *)node)->targets.size);
1251
+ pm_buffer_append_u32(buffer, targets_size);
1252
1252
  for (uint32_t index = 0; index < targets_size; index++) {
1253
- yp_serialize_node(parser, (yp_node_t *) ((yp_multi_write_node_t *)node)->targets.nodes[index], buffer);
1253
+ pm_serialize_node(parser, (pm_node_t *) ((pm_multi_write_node_t *)node)->targets.nodes[index], buffer);
1254
1254
  }
1255
- if (((yp_multi_write_node_t *)node)->lparen_loc.start == NULL) {
1256
- yp_buffer_append_u8(buffer, 0);
1255
+ if (((pm_multi_write_node_t *)node)->lparen_loc.start == NULL) {
1256
+ pm_buffer_append_u8(buffer, 0);
1257
1257
  } else {
1258
- yp_buffer_append_u8(buffer, 1);
1259
- yp_serialize_location(parser, &((yp_multi_write_node_t *)node)->lparen_loc, buffer);
1258
+ pm_buffer_append_u8(buffer, 1);
1259
+ pm_serialize_location(parser, &((pm_multi_write_node_t *)node)->lparen_loc, buffer);
1260
1260
  }
1261
- if (((yp_multi_write_node_t *)node)->rparen_loc.start == NULL) {
1262
- yp_buffer_append_u8(buffer, 0);
1261
+ if (((pm_multi_write_node_t *)node)->rparen_loc.start == NULL) {
1262
+ pm_buffer_append_u8(buffer, 0);
1263
1263
  } else {
1264
- yp_buffer_append_u8(buffer, 1);
1265
- yp_serialize_location(parser, &((yp_multi_write_node_t *)node)->rparen_loc, buffer);
1264
+ pm_buffer_append_u8(buffer, 1);
1265
+ pm_serialize_location(parser, &((pm_multi_write_node_t *)node)->rparen_loc, buffer);
1266
1266
  }
1267
- yp_serialize_location(parser, &((yp_multi_write_node_t *)node)->operator_loc, buffer);
1268
- yp_serialize_node(parser, (yp_node_t *)((yp_multi_write_node_t *)node)->value, buffer);
1267
+ pm_serialize_location(parser, &((pm_multi_write_node_t *)node)->operator_loc, buffer);
1268
+ pm_serialize_node(parser, (pm_node_t *)((pm_multi_write_node_t *)node)->value, buffer);
1269
1269
  break;
1270
1270
  }
1271
- case YP_NEXT_NODE: {
1272
- if (((yp_next_node_t *)node)->arguments == NULL) {
1273
- yp_buffer_append_u8(buffer, 0);
1271
+ case PM_NEXT_NODE: {
1272
+ if (((pm_next_node_t *)node)->arguments == NULL) {
1273
+ pm_buffer_append_u8(buffer, 0);
1274
1274
  } else {
1275
- yp_serialize_node(parser, (yp_node_t *)((yp_next_node_t *)node)->arguments, buffer);
1275
+ pm_serialize_node(parser, (pm_node_t *)((pm_next_node_t *)node)->arguments, buffer);
1276
1276
  }
1277
- yp_serialize_location(parser, &((yp_next_node_t *)node)->keyword_loc, buffer);
1277
+ pm_serialize_location(parser, &((pm_next_node_t *)node)->keyword_loc, buffer);
1278
1278
  break;
1279
1279
  }
1280
- case YP_NIL_NODE: {
1280
+ case PM_NIL_NODE: {
1281
1281
  break;
1282
1282
  }
1283
- case YP_NO_KEYWORDS_PARAMETER_NODE: {
1284
- yp_serialize_location(parser, &((yp_no_keywords_parameter_node_t *)node)->operator_loc, buffer);
1285
- yp_serialize_location(parser, &((yp_no_keywords_parameter_node_t *)node)->keyword_loc, buffer);
1283
+ case PM_NO_KEYWORDS_PARAMETER_NODE: {
1284
+ pm_serialize_location(parser, &((pm_no_keywords_parameter_node_t *)node)->operator_loc, buffer);
1285
+ pm_serialize_location(parser, &((pm_no_keywords_parameter_node_t *)node)->keyword_loc, buffer);
1286
1286
  break;
1287
1287
  }
1288
- case YP_NUMBERED_REFERENCE_READ_NODE: {
1289
- yp_buffer_append_u32(buffer, ((yp_numbered_reference_read_node_t *)node)->number);
1288
+ case PM_NUMBERED_REFERENCE_READ_NODE: {
1289
+ pm_buffer_append_u32(buffer, ((pm_numbered_reference_read_node_t *)node)->number);
1290
1290
  break;
1291
1291
  }
1292
- case YP_OPTIONAL_PARAMETER_NODE: {
1293
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_optional_parameter_node_t *)node)->name));
1294
- yp_serialize_location(parser, &((yp_optional_parameter_node_t *)node)->name_loc, buffer);
1295
- yp_serialize_location(parser, &((yp_optional_parameter_node_t *)node)->operator_loc, buffer);
1296
- yp_serialize_node(parser, (yp_node_t *)((yp_optional_parameter_node_t *)node)->value, buffer);
1292
+ case PM_OPTIONAL_PARAMETER_NODE: {
1293
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_optional_parameter_node_t *)node)->name));
1294
+ pm_serialize_location(parser, &((pm_optional_parameter_node_t *)node)->name_loc, buffer);
1295
+ pm_serialize_location(parser, &((pm_optional_parameter_node_t *)node)->operator_loc, buffer);
1296
+ pm_serialize_node(parser, (pm_node_t *)((pm_optional_parameter_node_t *)node)->value, buffer);
1297
1297
  break;
1298
1298
  }
1299
- case YP_OR_NODE: {
1300
- yp_serialize_node(parser, (yp_node_t *)((yp_or_node_t *)node)->left, buffer);
1301
- yp_serialize_node(parser, (yp_node_t *)((yp_or_node_t *)node)->right, buffer);
1302
- yp_serialize_location(parser, &((yp_or_node_t *)node)->operator_loc, buffer);
1299
+ case PM_OR_NODE: {
1300
+ pm_serialize_node(parser, (pm_node_t *)((pm_or_node_t *)node)->left, buffer);
1301
+ pm_serialize_node(parser, (pm_node_t *)((pm_or_node_t *)node)->right, buffer);
1302
+ pm_serialize_location(parser, &((pm_or_node_t *)node)->operator_loc, buffer);
1303
1303
  break;
1304
1304
  }
1305
- case YP_PARAMETERS_NODE: {
1306
- uint32_t requireds_size = yp_sizet_to_u32(((yp_parameters_node_t *)node)->requireds.size);
1307
- yp_buffer_append_u32(buffer, requireds_size);
1305
+ case PM_PARAMETERS_NODE: {
1306
+ uint32_t requireds_size = pm_sizet_to_u32(((pm_parameters_node_t *)node)->requireds.size);
1307
+ pm_buffer_append_u32(buffer, requireds_size);
1308
1308
  for (uint32_t index = 0; index < requireds_size; index++) {
1309
- yp_serialize_node(parser, (yp_node_t *) ((yp_parameters_node_t *)node)->requireds.nodes[index], buffer);
1309
+ pm_serialize_node(parser, (pm_node_t *) ((pm_parameters_node_t *)node)->requireds.nodes[index], buffer);
1310
1310
  }
1311
- uint32_t optionals_size = yp_sizet_to_u32(((yp_parameters_node_t *)node)->optionals.size);
1312
- yp_buffer_append_u32(buffer, optionals_size);
1311
+ uint32_t optionals_size = pm_sizet_to_u32(((pm_parameters_node_t *)node)->optionals.size);
1312
+ pm_buffer_append_u32(buffer, optionals_size);
1313
1313
  for (uint32_t index = 0; index < optionals_size; index++) {
1314
- yp_serialize_node(parser, (yp_node_t *) ((yp_parameters_node_t *)node)->optionals.nodes[index], buffer);
1314
+ pm_serialize_node(parser, (pm_node_t *) ((pm_parameters_node_t *)node)->optionals.nodes[index], buffer);
1315
1315
  }
1316
- if (((yp_parameters_node_t *)node)->rest == NULL) {
1317
- yp_buffer_append_u8(buffer, 0);
1316
+ if (((pm_parameters_node_t *)node)->rest == NULL) {
1317
+ pm_buffer_append_u8(buffer, 0);
1318
1318
  } else {
1319
- yp_serialize_node(parser, (yp_node_t *)((yp_parameters_node_t *)node)->rest, buffer);
1319
+ pm_serialize_node(parser, (pm_node_t *)((pm_parameters_node_t *)node)->rest, buffer);
1320
1320
  }
1321
- uint32_t posts_size = yp_sizet_to_u32(((yp_parameters_node_t *)node)->posts.size);
1322
- yp_buffer_append_u32(buffer, posts_size);
1321
+ uint32_t posts_size = pm_sizet_to_u32(((pm_parameters_node_t *)node)->posts.size);
1322
+ pm_buffer_append_u32(buffer, posts_size);
1323
1323
  for (uint32_t index = 0; index < posts_size; index++) {
1324
- yp_serialize_node(parser, (yp_node_t *) ((yp_parameters_node_t *)node)->posts.nodes[index], buffer);
1324
+ pm_serialize_node(parser, (pm_node_t *) ((pm_parameters_node_t *)node)->posts.nodes[index], buffer);
1325
1325
  }
1326
- uint32_t keywords_size = yp_sizet_to_u32(((yp_parameters_node_t *)node)->keywords.size);
1327
- yp_buffer_append_u32(buffer, keywords_size);
1326
+ uint32_t keywords_size = pm_sizet_to_u32(((pm_parameters_node_t *)node)->keywords.size);
1327
+ pm_buffer_append_u32(buffer, keywords_size);
1328
1328
  for (uint32_t index = 0; index < keywords_size; index++) {
1329
- yp_serialize_node(parser, (yp_node_t *) ((yp_parameters_node_t *)node)->keywords.nodes[index], buffer);
1329
+ pm_serialize_node(parser, (pm_node_t *) ((pm_parameters_node_t *)node)->keywords.nodes[index], buffer);
1330
1330
  }
1331
- if (((yp_parameters_node_t *)node)->keyword_rest == NULL) {
1332
- yp_buffer_append_u8(buffer, 0);
1331
+ if (((pm_parameters_node_t *)node)->keyword_rest == NULL) {
1332
+ pm_buffer_append_u8(buffer, 0);
1333
1333
  } else {
1334
- yp_serialize_node(parser, (yp_node_t *)((yp_parameters_node_t *)node)->keyword_rest, buffer);
1334
+ pm_serialize_node(parser, (pm_node_t *)((pm_parameters_node_t *)node)->keyword_rest, buffer);
1335
1335
  }
1336
- if (((yp_parameters_node_t *)node)->block == NULL) {
1337
- yp_buffer_append_u8(buffer, 0);
1336
+ if (((pm_parameters_node_t *)node)->block == NULL) {
1337
+ pm_buffer_append_u8(buffer, 0);
1338
1338
  } else {
1339
- yp_serialize_node(parser, (yp_node_t *)((yp_parameters_node_t *)node)->block, buffer);
1339
+ pm_serialize_node(parser, (pm_node_t *)((pm_parameters_node_t *)node)->block, buffer);
1340
1340
  }
1341
1341
  break;
1342
1342
  }
1343
- case YP_PARENTHESES_NODE: {
1344
- if (((yp_parentheses_node_t *)node)->body == NULL) {
1345
- yp_buffer_append_u8(buffer, 0);
1343
+ case PM_PARENTHESES_NODE: {
1344
+ if (((pm_parentheses_node_t *)node)->body == NULL) {
1345
+ pm_buffer_append_u8(buffer, 0);
1346
1346
  } else {
1347
- yp_serialize_node(parser, (yp_node_t *)((yp_parentheses_node_t *)node)->body, buffer);
1347
+ pm_serialize_node(parser, (pm_node_t *)((pm_parentheses_node_t *)node)->body, buffer);
1348
1348
  }
1349
- yp_serialize_location(parser, &((yp_parentheses_node_t *)node)->opening_loc, buffer);
1350
- yp_serialize_location(parser, &((yp_parentheses_node_t *)node)->closing_loc, buffer);
1349
+ pm_serialize_location(parser, &((pm_parentheses_node_t *)node)->opening_loc, buffer);
1350
+ pm_serialize_location(parser, &((pm_parentheses_node_t *)node)->closing_loc, buffer);
1351
1351
  break;
1352
1352
  }
1353
- case YP_PINNED_EXPRESSION_NODE: {
1354
- yp_serialize_node(parser, (yp_node_t *)((yp_pinned_expression_node_t *)node)->expression, buffer);
1355
- yp_serialize_location(parser, &((yp_pinned_expression_node_t *)node)->operator_loc, buffer);
1356
- yp_serialize_location(parser, &((yp_pinned_expression_node_t *)node)->lparen_loc, buffer);
1357
- yp_serialize_location(parser, &((yp_pinned_expression_node_t *)node)->rparen_loc, buffer);
1353
+ case PM_PINNED_EXPRESSION_NODE: {
1354
+ pm_serialize_node(parser, (pm_node_t *)((pm_pinned_expression_node_t *)node)->expression, buffer);
1355
+ pm_serialize_location(parser, &((pm_pinned_expression_node_t *)node)->operator_loc, buffer);
1356
+ pm_serialize_location(parser, &((pm_pinned_expression_node_t *)node)->lparen_loc, buffer);
1357
+ pm_serialize_location(parser, &((pm_pinned_expression_node_t *)node)->rparen_loc, buffer);
1358
1358
  break;
1359
1359
  }
1360
- case YP_PINNED_VARIABLE_NODE: {
1361
- yp_serialize_node(parser, (yp_node_t *)((yp_pinned_variable_node_t *)node)->variable, buffer);
1362
- yp_serialize_location(parser, &((yp_pinned_variable_node_t *)node)->operator_loc, buffer);
1360
+ case PM_PINNED_VARIABLE_NODE: {
1361
+ pm_serialize_node(parser, (pm_node_t *)((pm_pinned_variable_node_t *)node)->variable, buffer);
1362
+ pm_serialize_location(parser, &((pm_pinned_variable_node_t *)node)->operator_loc, buffer);
1363
1363
  break;
1364
1364
  }
1365
- case YP_POST_EXECUTION_NODE: {
1366
- if (((yp_post_execution_node_t *)node)->statements == NULL) {
1367
- yp_buffer_append_u8(buffer, 0);
1365
+ case PM_POST_EXECUTION_NODE: {
1366
+ if (((pm_post_execution_node_t *)node)->statements == NULL) {
1367
+ pm_buffer_append_u8(buffer, 0);
1368
1368
  } else {
1369
- yp_serialize_node(parser, (yp_node_t *)((yp_post_execution_node_t *)node)->statements, buffer);
1369
+ pm_serialize_node(parser, (pm_node_t *)((pm_post_execution_node_t *)node)->statements, buffer);
1370
1370
  }
1371
- yp_serialize_location(parser, &((yp_post_execution_node_t *)node)->keyword_loc, buffer);
1372
- yp_serialize_location(parser, &((yp_post_execution_node_t *)node)->opening_loc, buffer);
1373
- yp_serialize_location(parser, &((yp_post_execution_node_t *)node)->closing_loc, buffer);
1371
+ pm_serialize_location(parser, &((pm_post_execution_node_t *)node)->keyword_loc, buffer);
1372
+ pm_serialize_location(parser, &((pm_post_execution_node_t *)node)->opening_loc, buffer);
1373
+ pm_serialize_location(parser, &((pm_post_execution_node_t *)node)->closing_loc, buffer);
1374
1374
  break;
1375
1375
  }
1376
- case YP_PRE_EXECUTION_NODE: {
1377
- if (((yp_pre_execution_node_t *)node)->statements == NULL) {
1378
- yp_buffer_append_u8(buffer, 0);
1376
+ case PM_PRE_EXECUTION_NODE: {
1377
+ if (((pm_pre_execution_node_t *)node)->statements == NULL) {
1378
+ pm_buffer_append_u8(buffer, 0);
1379
1379
  } else {
1380
- yp_serialize_node(parser, (yp_node_t *)((yp_pre_execution_node_t *)node)->statements, buffer);
1380
+ pm_serialize_node(parser, (pm_node_t *)((pm_pre_execution_node_t *)node)->statements, buffer);
1381
1381
  }
1382
- yp_serialize_location(parser, &((yp_pre_execution_node_t *)node)->keyword_loc, buffer);
1383
- yp_serialize_location(parser, &((yp_pre_execution_node_t *)node)->opening_loc, buffer);
1384
- yp_serialize_location(parser, &((yp_pre_execution_node_t *)node)->closing_loc, buffer);
1382
+ pm_serialize_location(parser, &((pm_pre_execution_node_t *)node)->keyword_loc, buffer);
1383
+ pm_serialize_location(parser, &((pm_pre_execution_node_t *)node)->opening_loc, buffer);
1384
+ pm_serialize_location(parser, &((pm_pre_execution_node_t *)node)->closing_loc, buffer);
1385
1385
  break;
1386
1386
  }
1387
- case YP_PROGRAM_NODE: {
1388
- uint32_t locals_size = yp_sizet_to_u32(((yp_program_node_t *)node)->locals.size);
1389
- yp_buffer_append_u32(buffer, locals_size);
1387
+ case PM_PROGRAM_NODE: {
1388
+ uint32_t locals_size = pm_sizet_to_u32(((pm_program_node_t *)node)->locals.size);
1389
+ pm_buffer_append_u32(buffer, locals_size);
1390
1390
  for (uint32_t index = 0; index < locals_size; index++) {
1391
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_program_node_t *)node)->locals.ids[index]));
1391
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_program_node_t *)node)->locals.ids[index]));
1392
1392
  }
1393
- yp_serialize_node(parser, (yp_node_t *)((yp_program_node_t *)node)->statements, buffer);
1393
+ pm_serialize_node(parser, (pm_node_t *)((pm_program_node_t *)node)->statements, buffer);
1394
1394
  break;
1395
1395
  }
1396
- case YP_RANGE_NODE: {
1397
- if (((yp_range_node_t *)node)->left == NULL) {
1398
- yp_buffer_append_u8(buffer, 0);
1396
+ case PM_RANGE_NODE: {
1397
+ if (((pm_range_node_t *)node)->left == NULL) {
1398
+ pm_buffer_append_u8(buffer, 0);
1399
1399
  } else {
1400
- yp_serialize_node(parser, (yp_node_t *)((yp_range_node_t *)node)->left, buffer);
1400
+ pm_serialize_node(parser, (pm_node_t *)((pm_range_node_t *)node)->left, buffer);
1401
1401
  }
1402
- if (((yp_range_node_t *)node)->right == NULL) {
1403
- yp_buffer_append_u8(buffer, 0);
1402
+ if (((pm_range_node_t *)node)->right == NULL) {
1403
+ pm_buffer_append_u8(buffer, 0);
1404
1404
  } else {
1405
- yp_serialize_node(parser, (yp_node_t *)((yp_range_node_t *)node)->right, buffer);
1405
+ pm_serialize_node(parser, (pm_node_t *)((pm_range_node_t *)node)->right, buffer);
1406
1406
  }
1407
- yp_serialize_location(parser, &((yp_range_node_t *)node)->operator_loc, buffer);
1408
- yp_buffer_append_u32(buffer, node->flags >> 2);
1407
+ pm_serialize_location(parser, &((pm_range_node_t *)node)->operator_loc, buffer);
1408
+ pm_buffer_append_u32(buffer, node->flags >> 2);
1409
1409
  break;
1410
1410
  }
1411
- case YP_RATIONAL_NODE: {
1412
- yp_serialize_node(parser, (yp_node_t *)((yp_rational_node_t *)node)->numeric, buffer);
1411
+ case PM_RATIONAL_NODE: {
1412
+ pm_serialize_node(parser, (pm_node_t *)((pm_rational_node_t *)node)->numeric, buffer);
1413
1413
  break;
1414
1414
  }
1415
- case YP_REDO_NODE: {
1415
+ case PM_REDO_NODE: {
1416
1416
  break;
1417
1417
  }
1418
- case YP_REGULAR_EXPRESSION_NODE: {
1419
- yp_serialize_location(parser, &((yp_regular_expression_node_t *)node)->opening_loc, buffer);
1420
- yp_serialize_location(parser, &((yp_regular_expression_node_t *)node)->content_loc, buffer);
1421
- yp_serialize_location(parser, &((yp_regular_expression_node_t *)node)->closing_loc, buffer);
1422
- yp_serialize_string(parser, &((yp_regular_expression_node_t *)node)->unescaped, buffer);
1423
- yp_buffer_append_u32(buffer, node->flags >> 2);
1418
+ case PM_REGULAR_EXPRESSION_NODE: {
1419
+ pm_serialize_location(parser, &((pm_regular_expression_node_t *)node)->opening_loc, buffer);
1420
+ pm_serialize_location(parser, &((pm_regular_expression_node_t *)node)->content_loc, buffer);
1421
+ pm_serialize_location(parser, &((pm_regular_expression_node_t *)node)->closing_loc, buffer);
1422
+ pm_serialize_string(parser, &((pm_regular_expression_node_t *)node)->unescaped, buffer);
1423
+ pm_buffer_append_u32(buffer, node->flags >> 2);
1424
1424
  break;
1425
1425
  }
1426
- case YP_REQUIRED_DESTRUCTURED_PARAMETER_NODE: {
1427
- uint32_t parameters_size = yp_sizet_to_u32(((yp_required_destructured_parameter_node_t *)node)->parameters.size);
1428
- yp_buffer_append_u32(buffer, parameters_size);
1426
+ case PM_REQUIRED_DESTRUCTURED_PARAMETER_NODE: {
1427
+ uint32_t parameters_size = pm_sizet_to_u32(((pm_required_destructured_parameter_node_t *)node)->parameters.size);
1428
+ pm_buffer_append_u32(buffer, parameters_size);
1429
1429
  for (uint32_t index = 0; index < parameters_size; index++) {
1430
- yp_serialize_node(parser, (yp_node_t *) ((yp_required_destructured_parameter_node_t *)node)->parameters.nodes[index], buffer);
1430
+ pm_serialize_node(parser, (pm_node_t *) ((pm_required_destructured_parameter_node_t *)node)->parameters.nodes[index], buffer);
1431
1431
  }
1432
- yp_serialize_location(parser, &((yp_required_destructured_parameter_node_t *)node)->opening_loc, buffer);
1433
- yp_serialize_location(parser, &((yp_required_destructured_parameter_node_t *)node)->closing_loc, buffer);
1432
+ pm_serialize_location(parser, &((pm_required_destructured_parameter_node_t *)node)->opening_loc, buffer);
1433
+ pm_serialize_location(parser, &((pm_required_destructured_parameter_node_t *)node)->closing_loc, buffer);
1434
1434
  break;
1435
1435
  }
1436
- case YP_REQUIRED_PARAMETER_NODE: {
1437
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_required_parameter_node_t *)node)->name));
1436
+ case PM_REQUIRED_PARAMETER_NODE: {
1437
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_required_parameter_node_t *)node)->name));
1438
1438
  break;
1439
1439
  }
1440
- case YP_RESCUE_MODIFIER_NODE: {
1441
- yp_serialize_node(parser, (yp_node_t *)((yp_rescue_modifier_node_t *)node)->expression, buffer);
1442
- yp_serialize_location(parser, &((yp_rescue_modifier_node_t *)node)->keyword_loc, buffer);
1443
- yp_serialize_node(parser, (yp_node_t *)((yp_rescue_modifier_node_t *)node)->rescue_expression, buffer);
1440
+ case PM_RESCUE_MODIFIER_NODE: {
1441
+ pm_serialize_node(parser, (pm_node_t *)((pm_rescue_modifier_node_t *)node)->expression, buffer);
1442
+ pm_serialize_location(parser, &((pm_rescue_modifier_node_t *)node)->keyword_loc, buffer);
1443
+ pm_serialize_node(parser, (pm_node_t *)((pm_rescue_modifier_node_t *)node)->rescue_expression, buffer);
1444
1444
  break;
1445
1445
  }
1446
- case YP_RESCUE_NODE: {
1447
- yp_serialize_location(parser, &((yp_rescue_node_t *)node)->keyword_loc, buffer);
1448
- uint32_t exceptions_size = yp_sizet_to_u32(((yp_rescue_node_t *)node)->exceptions.size);
1449
- yp_buffer_append_u32(buffer, exceptions_size);
1446
+ case PM_RESCUE_NODE: {
1447
+ pm_serialize_location(parser, &((pm_rescue_node_t *)node)->keyword_loc, buffer);
1448
+ uint32_t exceptions_size = pm_sizet_to_u32(((pm_rescue_node_t *)node)->exceptions.size);
1449
+ pm_buffer_append_u32(buffer, exceptions_size);
1450
1450
  for (uint32_t index = 0; index < exceptions_size; index++) {
1451
- yp_serialize_node(parser, (yp_node_t *) ((yp_rescue_node_t *)node)->exceptions.nodes[index], buffer);
1451
+ pm_serialize_node(parser, (pm_node_t *) ((pm_rescue_node_t *)node)->exceptions.nodes[index], buffer);
1452
1452
  }
1453
- if (((yp_rescue_node_t *)node)->operator_loc.start == NULL) {
1454
- yp_buffer_append_u8(buffer, 0);
1453
+ if (((pm_rescue_node_t *)node)->operator_loc.start == NULL) {
1454
+ pm_buffer_append_u8(buffer, 0);
1455
1455
  } else {
1456
- yp_buffer_append_u8(buffer, 1);
1457
- yp_serialize_location(parser, &((yp_rescue_node_t *)node)->operator_loc, buffer);
1456
+ pm_buffer_append_u8(buffer, 1);
1457
+ pm_serialize_location(parser, &((pm_rescue_node_t *)node)->operator_loc, buffer);
1458
1458
  }
1459
- if (((yp_rescue_node_t *)node)->reference == NULL) {
1460
- yp_buffer_append_u8(buffer, 0);
1459
+ if (((pm_rescue_node_t *)node)->reference == NULL) {
1460
+ pm_buffer_append_u8(buffer, 0);
1461
1461
  } else {
1462
- yp_serialize_node(parser, (yp_node_t *)((yp_rescue_node_t *)node)->reference, buffer);
1462
+ pm_serialize_node(parser, (pm_node_t *)((pm_rescue_node_t *)node)->reference, buffer);
1463
1463
  }
1464
- if (((yp_rescue_node_t *)node)->statements == NULL) {
1465
- yp_buffer_append_u8(buffer, 0);
1464
+ if (((pm_rescue_node_t *)node)->statements == NULL) {
1465
+ pm_buffer_append_u8(buffer, 0);
1466
1466
  } else {
1467
- yp_serialize_node(parser, (yp_node_t *)((yp_rescue_node_t *)node)->statements, buffer);
1467
+ pm_serialize_node(parser, (pm_node_t *)((pm_rescue_node_t *)node)->statements, buffer);
1468
1468
  }
1469
- if (((yp_rescue_node_t *)node)->consequent == NULL) {
1470
- yp_buffer_append_u8(buffer, 0);
1469
+ if (((pm_rescue_node_t *)node)->consequent == NULL) {
1470
+ pm_buffer_append_u8(buffer, 0);
1471
1471
  } else {
1472
- yp_serialize_node(parser, (yp_node_t *)((yp_rescue_node_t *)node)->consequent, buffer);
1472
+ pm_serialize_node(parser, (pm_node_t *)((pm_rescue_node_t *)node)->consequent, buffer);
1473
1473
  }
1474
1474
  break;
1475
1475
  }
1476
- case YP_REST_PARAMETER_NODE: {
1477
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_rest_parameter_node_t *)node)->name));
1478
- if (((yp_rest_parameter_node_t *)node)->name_loc.start == NULL) {
1479
- yp_buffer_append_u8(buffer, 0);
1476
+ case PM_REST_PARAMETER_NODE: {
1477
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_rest_parameter_node_t *)node)->name));
1478
+ if (((pm_rest_parameter_node_t *)node)->name_loc.start == NULL) {
1479
+ pm_buffer_append_u8(buffer, 0);
1480
1480
  } else {
1481
- yp_buffer_append_u8(buffer, 1);
1482
- yp_serialize_location(parser, &((yp_rest_parameter_node_t *)node)->name_loc, buffer);
1481
+ pm_buffer_append_u8(buffer, 1);
1482
+ pm_serialize_location(parser, &((pm_rest_parameter_node_t *)node)->name_loc, buffer);
1483
1483
  }
1484
- yp_serialize_location(parser, &((yp_rest_parameter_node_t *)node)->operator_loc, buffer);
1484
+ pm_serialize_location(parser, &((pm_rest_parameter_node_t *)node)->operator_loc, buffer);
1485
1485
  break;
1486
1486
  }
1487
- case YP_RETRY_NODE: {
1487
+ case PM_RETRY_NODE: {
1488
1488
  break;
1489
1489
  }
1490
- case YP_RETURN_NODE: {
1491
- yp_serialize_location(parser, &((yp_return_node_t *)node)->keyword_loc, buffer);
1492
- if (((yp_return_node_t *)node)->arguments == NULL) {
1493
- yp_buffer_append_u8(buffer, 0);
1490
+ case PM_RETURN_NODE: {
1491
+ pm_serialize_location(parser, &((pm_return_node_t *)node)->keyword_loc, buffer);
1492
+ if (((pm_return_node_t *)node)->arguments == NULL) {
1493
+ pm_buffer_append_u8(buffer, 0);
1494
1494
  } else {
1495
- yp_serialize_node(parser, (yp_node_t *)((yp_return_node_t *)node)->arguments, buffer);
1495
+ pm_serialize_node(parser, (pm_node_t *)((pm_return_node_t *)node)->arguments, buffer);
1496
1496
  }
1497
1497
  break;
1498
1498
  }
1499
- case YP_SELF_NODE: {
1499
+ case PM_SELF_NODE: {
1500
1500
  break;
1501
1501
  }
1502
- case YP_SINGLETON_CLASS_NODE: {
1503
- uint32_t locals_size = yp_sizet_to_u32(((yp_singleton_class_node_t *)node)->locals.size);
1504
- yp_buffer_append_u32(buffer, locals_size);
1502
+ case PM_SINGLETON_CLASS_NODE: {
1503
+ uint32_t locals_size = pm_sizet_to_u32(((pm_singleton_class_node_t *)node)->locals.size);
1504
+ pm_buffer_append_u32(buffer, locals_size);
1505
1505
  for (uint32_t index = 0; index < locals_size; index++) {
1506
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(((yp_singleton_class_node_t *)node)->locals.ids[index]));
1506
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(((pm_singleton_class_node_t *)node)->locals.ids[index]));
1507
1507
  }
1508
- yp_serialize_location(parser, &((yp_singleton_class_node_t *)node)->class_keyword_loc, buffer);
1509
- yp_serialize_location(parser, &((yp_singleton_class_node_t *)node)->operator_loc, buffer);
1510
- yp_serialize_node(parser, (yp_node_t *)((yp_singleton_class_node_t *)node)->expression, buffer);
1511
- if (((yp_singleton_class_node_t *)node)->body == NULL) {
1512
- yp_buffer_append_u8(buffer, 0);
1508
+ pm_serialize_location(parser, &((pm_singleton_class_node_t *)node)->class_keyword_loc, buffer);
1509
+ pm_serialize_location(parser, &((pm_singleton_class_node_t *)node)->operator_loc, buffer);
1510
+ pm_serialize_node(parser, (pm_node_t *)((pm_singleton_class_node_t *)node)->expression, buffer);
1511
+ if (((pm_singleton_class_node_t *)node)->body == NULL) {
1512
+ pm_buffer_append_u8(buffer, 0);
1513
1513
  } else {
1514
- yp_serialize_node(parser, (yp_node_t *)((yp_singleton_class_node_t *)node)->body, buffer);
1514
+ pm_serialize_node(parser, (pm_node_t *)((pm_singleton_class_node_t *)node)->body, buffer);
1515
1515
  }
1516
- yp_serialize_location(parser, &((yp_singleton_class_node_t *)node)->end_keyword_loc, buffer);
1516
+ pm_serialize_location(parser, &((pm_singleton_class_node_t *)node)->end_keyword_loc, buffer);
1517
1517
  break;
1518
1518
  }
1519
- case YP_SOURCE_ENCODING_NODE: {
1519
+ case PM_SOURCE_ENCODING_NODE: {
1520
1520
  break;
1521
1521
  }
1522
- case YP_SOURCE_FILE_NODE: {
1523
- yp_serialize_string(parser, &((yp_source_file_node_t *)node)->filepath, buffer);
1522
+ case PM_SOURCE_FILE_NODE: {
1523
+ pm_serialize_string(parser, &((pm_source_file_node_t *)node)->filepath, buffer);
1524
1524
  break;
1525
1525
  }
1526
- case YP_SOURCE_LINE_NODE: {
1526
+ case PM_SOURCE_LINE_NODE: {
1527
1527
  break;
1528
1528
  }
1529
- case YP_SPLAT_NODE: {
1530
- yp_serialize_location(parser, &((yp_splat_node_t *)node)->operator_loc, buffer);
1531
- if (((yp_splat_node_t *)node)->expression == NULL) {
1532
- yp_buffer_append_u8(buffer, 0);
1529
+ case PM_SPLAT_NODE: {
1530
+ pm_serialize_location(parser, &((pm_splat_node_t *)node)->operator_loc, buffer);
1531
+ if (((pm_splat_node_t *)node)->expression == NULL) {
1532
+ pm_buffer_append_u8(buffer, 0);
1533
1533
  } else {
1534
- yp_serialize_node(parser, (yp_node_t *)((yp_splat_node_t *)node)->expression, buffer);
1534
+ pm_serialize_node(parser, (pm_node_t *)((pm_splat_node_t *)node)->expression, buffer);
1535
1535
  }
1536
1536
  break;
1537
1537
  }
1538
- case YP_STATEMENTS_NODE: {
1539
- uint32_t body_size = yp_sizet_to_u32(((yp_statements_node_t *)node)->body.size);
1540
- yp_buffer_append_u32(buffer, body_size);
1538
+ case PM_STATEMENTS_NODE: {
1539
+ uint32_t body_size = pm_sizet_to_u32(((pm_statements_node_t *)node)->body.size);
1540
+ pm_buffer_append_u32(buffer, body_size);
1541
1541
  for (uint32_t index = 0; index < body_size; index++) {
1542
- yp_serialize_node(parser, (yp_node_t *) ((yp_statements_node_t *)node)->body.nodes[index], buffer);
1542
+ pm_serialize_node(parser, (pm_node_t *) ((pm_statements_node_t *)node)->body.nodes[index], buffer);
1543
1543
  }
1544
1544
  break;
1545
1545
  }
1546
- case YP_STRING_CONCAT_NODE: {
1547
- yp_serialize_node(parser, (yp_node_t *)((yp_string_concat_node_t *)node)->left, buffer);
1548
- yp_serialize_node(parser, (yp_node_t *)((yp_string_concat_node_t *)node)->right, buffer);
1546
+ case PM_STRING_CONCAT_NODE: {
1547
+ pm_serialize_node(parser, (pm_node_t *)((pm_string_concat_node_t *)node)->left, buffer);
1548
+ pm_serialize_node(parser, (pm_node_t *)((pm_string_concat_node_t *)node)->right, buffer);
1549
1549
  break;
1550
1550
  }
1551
- case YP_STRING_NODE: {
1552
- yp_buffer_append_u32(buffer, node->flags >> 2);
1553
- if (((yp_string_node_t *)node)->opening_loc.start == NULL) {
1554
- yp_buffer_append_u8(buffer, 0);
1551
+ case PM_STRING_NODE: {
1552
+ pm_buffer_append_u32(buffer, node->flags >> 2);
1553
+ if (((pm_string_node_t *)node)->opening_loc.start == NULL) {
1554
+ pm_buffer_append_u8(buffer, 0);
1555
1555
  } else {
1556
- yp_buffer_append_u8(buffer, 1);
1557
- yp_serialize_location(parser, &((yp_string_node_t *)node)->opening_loc, buffer);
1556
+ pm_buffer_append_u8(buffer, 1);
1557
+ pm_serialize_location(parser, &((pm_string_node_t *)node)->opening_loc, buffer);
1558
1558
  }
1559
- yp_serialize_location(parser, &((yp_string_node_t *)node)->content_loc, buffer);
1560
- if (((yp_string_node_t *)node)->closing_loc.start == NULL) {
1561
- yp_buffer_append_u8(buffer, 0);
1559
+ pm_serialize_location(parser, &((pm_string_node_t *)node)->content_loc, buffer);
1560
+ if (((pm_string_node_t *)node)->closing_loc.start == NULL) {
1561
+ pm_buffer_append_u8(buffer, 0);
1562
1562
  } else {
1563
- yp_buffer_append_u8(buffer, 1);
1564
- yp_serialize_location(parser, &((yp_string_node_t *)node)->closing_loc, buffer);
1563
+ pm_buffer_append_u8(buffer, 1);
1564
+ pm_serialize_location(parser, &((pm_string_node_t *)node)->closing_loc, buffer);
1565
1565
  }
1566
- yp_serialize_string(parser, &((yp_string_node_t *)node)->unescaped, buffer);
1566
+ pm_serialize_string(parser, &((pm_string_node_t *)node)->unescaped, buffer);
1567
1567
  break;
1568
1568
  }
1569
- case YP_SUPER_NODE: {
1570
- yp_serialize_location(parser, &((yp_super_node_t *)node)->keyword_loc, buffer);
1571
- if (((yp_super_node_t *)node)->lparen_loc.start == NULL) {
1572
- yp_buffer_append_u8(buffer, 0);
1569
+ case PM_SUPER_NODE: {
1570
+ pm_serialize_location(parser, &((pm_super_node_t *)node)->keyword_loc, buffer);
1571
+ if (((pm_super_node_t *)node)->lparen_loc.start == NULL) {
1572
+ pm_buffer_append_u8(buffer, 0);
1573
1573
  } else {
1574
- yp_buffer_append_u8(buffer, 1);
1575
- yp_serialize_location(parser, &((yp_super_node_t *)node)->lparen_loc, buffer);
1574
+ pm_buffer_append_u8(buffer, 1);
1575
+ pm_serialize_location(parser, &((pm_super_node_t *)node)->lparen_loc, buffer);
1576
1576
  }
1577
- if (((yp_super_node_t *)node)->arguments == NULL) {
1578
- yp_buffer_append_u8(buffer, 0);
1577
+ if (((pm_super_node_t *)node)->arguments == NULL) {
1578
+ pm_buffer_append_u8(buffer, 0);
1579
1579
  } else {
1580
- yp_serialize_node(parser, (yp_node_t *)((yp_super_node_t *)node)->arguments, buffer);
1580
+ pm_serialize_node(parser, (pm_node_t *)((pm_super_node_t *)node)->arguments, buffer);
1581
1581
  }
1582
- if (((yp_super_node_t *)node)->rparen_loc.start == NULL) {
1583
- yp_buffer_append_u8(buffer, 0);
1582
+ if (((pm_super_node_t *)node)->rparen_loc.start == NULL) {
1583
+ pm_buffer_append_u8(buffer, 0);
1584
1584
  } else {
1585
- yp_buffer_append_u8(buffer, 1);
1586
- yp_serialize_location(parser, &((yp_super_node_t *)node)->rparen_loc, buffer);
1585
+ pm_buffer_append_u8(buffer, 1);
1586
+ pm_serialize_location(parser, &((pm_super_node_t *)node)->rparen_loc, buffer);
1587
1587
  }
1588
- if (((yp_super_node_t *)node)->block == NULL) {
1589
- yp_buffer_append_u8(buffer, 0);
1588
+ if (((pm_super_node_t *)node)->block == NULL) {
1589
+ pm_buffer_append_u8(buffer, 0);
1590
1590
  } else {
1591
- yp_serialize_node(parser, (yp_node_t *)((yp_super_node_t *)node)->block, buffer);
1591
+ pm_serialize_node(parser, (pm_node_t *)((pm_super_node_t *)node)->block, buffer);
1592
1592
  }
1593
1593
  break;
1594
1594
  }
1595
- case YP_SYMBOL_NODE: {
1596
- if (((yp_symbol_node_t *)node)->opening_loc.start == NULL) {
1597
- yp_buffer_append_u8(buffer, 0);
1595
+ case PM_SYMBOL_NODE: {
1596
+ if (((pm_symbol_node_t *)node)->opening_loc.start == NULL) {
1597
+ pm_buffer_append_u8(buffer, 0);
1598
1598
  } else {
1599
- yp_buffer_append_u8(buffer, 1);
1600
- yp_serialize_location(parser, &((yp_symbol_node_t *)node)->opening_loc, buffer);
1599
+ pm_buffer_append_u8(buffer, 1);
1600
+ pm_serialize_location(parser, &((pm_symbol_node_t *)node)->opening_loc, buffer);
1601
1601
  }
1602
- if (((yp_symbol_node_t *)node)->value_loc.start == NULL) {
1603
- yp_buffer_append_u8(buffer, 0);
1602
+ if (((pm_symbol_node_t *)node)->value_loc.start == NULL) {
1603
+ pm_buffer_append_u8(buffer, 0);
1604
1604
  } else {
1605
- yp_buffer_append_u8(buffer, 1);
1606
- yp_serialize_location(parser, &((yp_symbol_node_t *)node)->value_loc, buffer);
1605
+ pm_buffer_append_u8(buffer, 1);
1606
+ pm_serialize_location(parser, &((pm_symbol_node_t *)node)->value_loc, buffer);
1607
1607
  }
1608
- if (((yp_symbol_node_t *)node)->closing_loc.start == NULL) {
1609
- yp_buffer_append_u8(buffer, 0);
1608
+ if (((pm_symbol_node_t *)node)->closing_loc.start == NULL) {
1609
+ pm_buffer_append_u8(buffer, 0);
1610
1610
  } else {
1611
- yp_buffer_append_u8(buffer, 1);
1612
- yp_serialize_location(parser, &((yp_symbol_node_t *)node)->closing_loc, buffer);
1611
+ pm_buffer_append_u8(buffer, 1);
1612
+ pm_serialize_location(parser, &((pm_symbol_node_t *)node)->closing_loc, buffer);
1613
1613
  }
1614
- yp_serialize_string(parser, &((yp_symbol_node_t *)node)->unescaped, buffer);
1614
+ pm_serialize_string(parser, &((pm_symbol_node_t *)node)->unescaped, buffer);
1615
1615
  break;
1616
1616
  }
1617
- case YP_TRUE_NODE: {
1617
+ case PM_TRUE_NODE: {
1618
1618
  break;
1619
1619
  }
1620
- case YP_UNDEF_NODE: {
1621
- uint32_t names_size = yp_sizet_to_u32(((yp_undef_node_t *)node)->names.size);
1622
- yp_buffer_append_u32(buffer, names_size);
1620
+ case PM_UNDEF_NODE: {
1621
+ uint32_t names_size = pm_sizet_to_u32(((pm_undef_node_t *)node)->names.size);
1622
+ pm_buffer_append_u32(buffer, names_size);
1623
1623
  for (uint32_t index = 0; index < names_size; index++) {
1624
- yp_serialize_node(parser, (yp_node_t *) ((yp_undef_node_t *)node)->names.nodes[index], buffer);
1624
+ pm_serialize_node(parser, (pm_node_t *) ((pm_undef_node_t *)node)->names.nodes[index], buffer);
1625
1625
  }
1626
- yp_serialize_location(parser, &((yp_undef_node_t *)node)->keyword_loc, buffer);
1626
+ pm_serialize_location(parser, &((pm_undef_node_t *)node)->keyword_loc, buffer);
1627
1627
  break;
1628
1628
  }
1629
- case YP_UNLESS_NODE: {
1630
- yp_serialize_location(parser, &((yp_unless_node_t *)node)->keyword_loc, buffer);
1631
- yp_serialize_node(parser, (yp_node_t *)((yp_unless_node_t *)node)->predicate, buffer);
1632
- if (((yp_unless_node_t *)node)->statements == NULL) {
1633
- yp_buffer_append_u8(buffer, 0);
1629
+ case PM_UNLESS_NODE: {
1630
+ pm_serialize_location(parser, &((pm_unless_node_t *)node)->keyword_loc, buffer);
1631
+ pm_serialize_node(parser, (pm_node_t *)((pm_unless_node_t *)node)->predicate, buffer);
1632
+ if (((pm_unless_node_t *)node)->statements == NULL) {
1633
+ pm_buffer_append_u8(buffer, 0);
1634
1634
  } else {
1635
- yp_serialize_node(parser, (yp_node_t *)((yp_unless_node_t *)node)->statements, buffer);
1635
+ pm_serialize_node(parser, (pm_node_t *)((pm_unless_node_t *)node)->statements, buffer);
1636
1636
  }
1637
- if (((yp_unless_node_t *)node)->consequent == NULL) {
1638
- yp_buffer_append_u8(buffer, 0);
1637
+ if (((pm_unless_node_t *)node)->consequent == NULL) {
1638
+ pm_buffer_append_u8(buffer, 0);
1639
1639
  } else {
1640
- yp_serialize_node(parser, (yp_node_t *)((yp_unless_node_t *)node)->consequent, buffer);
1640
+ pm_serialize_node(parser, (pm_node_t *)((pm_unless_node_t *)node)->consequent, buffer);
1641
1641
  }
1642
- if (((yp_unless_node_t *)node)->end_keyword_loc.start == NULL) {
1643
- yp_buffer_append_u8(buffer, 0);
1642
+ if (((pm_unless_node_t *)node)->end_keyword_loc.start == NULL) {
1643
+ pm_buffer_append_u8(buffer, 0);
1644
1644
  } else {
1645
- yp_buffer_append_u8(buffer, 1);
1646
- yp_serialize_location(parser, &((yp_unless_node_t *)node)->end_keyword_loc, buffer);
1645
+ pm_buffer_append_u8(buffer, 1);
1646
+ pm_serialize_location(parser, &((pm_unless_node_t *)node)->end_keyword_loc, buffer);
1647
1647
  }
1648
1648
  break;
1649
1649
  }
1650
- case YP_UNTIL_NODE: {
1651
- yp_serialize_location(parser, &((yp_until_node_t *)node)->keyword_loc, buffer);
1652
- if (((yp_until_node_t *)node)->closing_loc.start == NULL) {
1653
- yp_buffer_append_u8(buffer, 0);
1650
+ case PM_UNTIL_NODE: {
1651
+ pm_serialize_location(parser, &((pm_until_node_t *)node)->keyword_loc, buffer);
1652
+ if (((pm_until_node_t *)node)->closing_loc.start == NULL) {
1653
+ pm_buffer_append_u8(buffer, 0);
1654
1654
  } else {
1655
- yp_buffer_append_u8(buffer, 1);
1656
- yp_serialize_location(parser, &((yp_until_node_t *)node)->closing_loc, buffer);
1655
+ pm_buffer_append_u8(buffer, 1);
1656
+ pm_serialize_location(parser, &((pm_until_node_t *)node)->closing_loc, buffer);
1657
1657
  }
1658
- yp_serialize_node(parser, (yp_node_t *)((yp_until_node_t *)node)->predicate, buffer);
1659
- if (((yp_until_node_t *)node)->statements == NULL) {
1660
- yp_buffer_append_u8(buffer, 0);
1658
+ pm_serialize_node(parser, (pm_node_t *)((pm_until_node_t *)node)->predicate, buffer);
1659
+ if (((pm_until_node_t *)node)->statements == NULL) {
1660
+ pm_buffer_append_u8(buffer, 0);
1661
1661
  } else {
1662
- yp_serialize_node(parser, (yp_node_t *)((yp_until_node_t *)node)->statements, buffer);
1662
+ pm_serialize_node(parser, (pm_node_t *)((pm_until_node_t *)node)->statements, buffer);
1663
1663
  }
1664
- yp_buffer_append_u32(buffer, node->flags >> 2);
1664
+ pm_buffer_append_u32(buffer, node->flags >> 2);
1665
1665
  break;
1666
1666
  }
1667
- case YP_WHEN_NODE: {
1668
- yp_serialize_location(parser, &((yp_when_node_t *)node)->keyword_loc, buffer);
1669
- uint32_t conditions_size = yp_sizet_to_u32(((yp_when_node_t *)node)->conditions.size);
1670
- yp_buffer_append_u32(buffer, conditions_size);
1667
+ case PM_WHEN_NODE: {
1668
+ pm_serialize_location(parser, &((pm_when_node_t *)node)->keyword_loc, buffer);
1669
+ uint32_t conditions_size = pm_sizet_to_u32(((pm_when_node_t *)node)->conditions.size);
1670
+ pm_buffer_append_u32(buffer, conditions_size);
1671
1671
  for (uint32_t index = 0; index < conditions_size; index++) {
1672
- yp_serialize_node(parser, (yp_node_t *) ((yp_when_node_t *)node)->conditions.nodes[index], buffer);
1672
+ pm_serialize_node(parser, (pm_node_t *) ((pm_when_node_t *)node)->conditions.nodes[index], buffer);
1673
1673
  }
1674
- if (((yp_when_node_t *)node)->statements == NULL) {
1675
- yp_buffer_append_u8(buffer, 0);
1674
+ if (((pm_when_node_t *)node)->statements == NULL) {
1675
+ pm_buffer_append_u8(buffer, 0);
1676
1676
  } else {
1677
- yp_serialize_node(parser, (yp_node_t *)((yp_when_node_t *)node)->statements, buffer);
1677
+ pm_serialize_node(parser, (pm_node_t *)((pm_when_node_t *)node)->statements, buffer);
1678
1678
  }
1679
1679
  break;
1680
1680
  }
1681
- case YP_WHILE_NODE: {
1682
- yp_serialize_location(parser, &((yp_while_node_t *)node)->keyword_loc, buffer);
1683
- if (((yp_while_node_t *)node)->closing_loc.start == NULL) {
1684
- yp_buffer_append_u8(buffer, 0);
1681
+ case PM_WHILE_NODE: {
1682
+ pm_serialize_location(parser, &((pm_while_node_t *)node)->keyword_loc, buffer);
1683
+ if (((pm_while_node_t *)node)->closing_loc.start == NULL) {
1684
+ pm_buffer_append_u8(buffer, 0);
1685
1685
  } else {
1686
- yp_buffer_append_u8(buffer, 1);
1687
- yp_serialize_location(parser, &((yp_while_node_t *)node)->closing_loc, buffer);
1686
+ pm_buffer_append_u8(buffer, 1);
1687
+ pm_serialize_location(parser, &((pm_while_node_t *)node)->closing_loc, buffer);
1688
1688
  }
1689
- yp_serialize_node(parser, (yp_node_t *)((yp_while_node_t *)node)->predicate, buffer);
1690
- if (((yp_while_node_t *)node)->statements == NULL) {
1691
- yp_buffer_append_u8(buffer, 0);
1689
+ pm_serialize_node(parser, (pm_node_t *)((pm_while_node_t *)node)->predicate, buffer);
1690
+ if (((pm_while_node_t *)node)->statements == NULL) {
1691
+ pm_buffer_append_u8(buffer, 0);
1692
1692
  } else {
1693
- yp_serialize_node(parser, (yp_node_t *)((yp_while_node_t *)node)->statements, buffer);
1693
+ pm_serialize_node(parser, (pm_node_t *)((pm_while_node_t *)node)->statements, buffer);
1694
1694
  }
1695
- yp_buffer_append_u32(buffer, node->flags >> 2);
1695
+ pm_buffer_append_u32(buffer, node->flags >> 2);
1696
1696
  break;
1697
1697
  }
1698
- case YP_X_STRING_NODE: {
1699
- yp_serialize_location(parser, &((yp_x_string_node_t *)node)->opening_loc, buffer);
1700
- yp_serialize_location(parser, &((yp_x_string_node_t *)node)->content_loc, buffer);
1701
- yp_serialize_location(parser, &((yp_x_string_node_t *)node)->closing_loc, buffer);
1702
- yp_serialize_string(parser, &((yp_x_string_node_t *)node)->unescaped, buffer);
1698
+ case PM_X_STRING_NODE: {
1699
+ pm_serialize_location(parser, &((pm_x_string_node_t *)node)->opening_loc, buffer);
1700
+ pm_serialize_location(parser, &((pm_x_string_node_t *)node)->content_loc, buffer);
1701
+ pm_serialize_location(parser, &((pm_x_string_node_t *)node)->closing_loc, buffer);
1702
+ pm_serialize_string(parser, &((pm_x_string_node_t *)node)->unescaped, buffer);
1703
1703
  break;
1704
1704
  }
1705
- case YP_YIELD_NODE: {
1706
- yp_serialize_location(parser, &((yp_yield_node_t *)node)->keyword_loc, buffer);
1707
- if (((yp_yield_node_t *)node)->lparen_loc.start == NULL) {
1708
- yp_buffer_append_u8(buffer, 0);
1705
+ case PM_YIELD_NODE: {
1706
+ pm_serialize_location(parser, &((pm_yield_node_t *)node)->keyword_loc, buffer);
1707
+ if (((pm_yield_node_t *)node)->lparen_loc.start == NULL) {
1708
+ pm_buffer_append_u8(buffer, 0);
1709
1709
  } else {
1710
- yp_buffer_append_u8(buffer, 1);
1711
- yp_serialize_location(parser, &((yp_yield_node_t *)node)->lparen_loc, buffer);
1710
+ pm_buffer_append_u8(buffer, 1);
1711
+ pm_serialize_location(parser, &((pm_yield_node_t *)node)->lparen_loc, buffer);
1712
1712
  }
1713
- if (((yp_yield_node_t *)node)->arguments == NULL) {
1714
- yp_buffer_append_u8(buffer, 0);
1713
+ if (((pm_yield_node_t *)node)->arguments == NULL) {
1714
+ pm_buffer_append_u8(buffer, 0);
1715
1715
  } else {
1716
- yp_serialize_node(parser, (yp_node_t *)((yp_yield_node_t *)node)->arguments, buffer);
1716
+ pm_serialize_node(parser, (pm_node_t *)((pm_yield_node_t *)node)->arguments, buffer);
1717
1717
  }
1718
- if (((yp_yield_node_t *)node)->rparen_loc.start == NULL) {
1719
- yp_buffer_append_u8(buffer, 0);
1718
+ if (((pm_yield_node_t *)node)->rparen_loc.start == NULL) {
1719
+ pm_buffer_append_u8(buffer, 0);
1720
1720
  } else {
1721
- yp_buffer_append_u8(buffer, 1);
1722
- yp_serialize_location(parser, &((yp_yield_node_t *)node)->rparen_loc, buffer);
1721
+ pm_buffer_append_u8(buffer, 1);
1722
+ pm_serialize_location(parser, &((pm_yield_node_t *)node)->rparen_loc, buffer);
1723
1723
  }
1724
1724
  break;
1725
1725
  }
@@ -1727,173 +1727,173 @@ yp_serialize_node(yp_parser_t *parser, yp_node_t *node, yp_buffer_t *buffer) {
1727
1727
  }
1728
1728
 
1729
1729
  static void
1730
- yp_serialize_comment(yp_parser_t *parser, yp_comment_t *comment, yp_buffer_t *buffer) {
1730
+ pm_serialize_comment(pm_parser_t *parser, pm_comment_t *comment, pm_buffer_t *buffer) {
1731
1731
  // serialize type
1732
- yp_buffer_append_u8(buffer, (uint8_t) comment->type);
1732
+ pm_buffer_append_u8(buffer, (uint8_t) comment->type);
1733
1733
 
1734
1734
  // serialize location
1735
- yp_buffer_append_u32(buffer, yp_ptrdifft_to_u32(comment->start - parser->start));
1736
- yp_buffer_append_u32(buffer, yp_ptrdifft_to_u32(comment->end - comment->start));
1735
+ pm_buffer_append_u32(buffer, pm_ptrdifft_to_u32(comment->start - parser->start));
1736
+ pm_buffer_append_u32(buffer, pm_ptrdifft_to_u32(comment->end - comment->start));
1737
1737
  }
1738
1738
 
1739
1739
  static void
1740
- yp_serialize_comment_list(yp_parser_t *parser, yp_list_t *list, yp_buffer_t *buffer) {
1741
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(yp_list_size(list)));
1740
+ pm_serialize_comment_list(pm_parser_t *parser, pm_list_t *list, pm_buffer_t *buffer) {
1741
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(pm_list_size(list)));
1742
1742
 
1743
- yp_comment_t *comment;
1744
- for (comment = (yp_comment_t *) list->head; comment != NULL; comment = (yp_comment_t *) comment->node.next) {
1745
- yp_serialize_comment(parser, comment, buffer);
1743
+ pm_comment_t *comment;
1744
+ for (comment = (pm_comment_t *) list->head; comment != NULL; comment = (pm_comment_t *) comment->node.next) {
1745
+ pm_serialize_comment(parser, comment, buffer);
1746
1746
  }
1747
1747
  }
1748
1748
 
1749
1749
  static void
1750
- yp_serialize_diagnostic(yp_parser_t *parser, yp_diagnostic_t *diagnostic, yp_buffer_t *buffer) {
1750
+ pm_serialize_diagnostic(pm_parser_t *parser, pm_diagnostic_t *diagnostic, pm_buffer_t *buffer) {
1751
1751
  // serialize message
1752
1752
  size_t message_length = strlen(diagnostic->message);
1753
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(message_length));
1754
- yp_buffer_append_str(buffer, diagnostic->message, message_length);
1753
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(message_length));
1754
+ pm_buffer_append_str(buffer, diagnostic->message, message_length);
1755
1755
 
1756
1756
  // serialize location
1757
- yp_buffer_append_u32(buffer, yp_ptrdifft_to_u32(diagnostic->start - parser->start));
1758
- yp_buffer_append_u32(buffer, yp_ptrdifft_to_u32(diagnostic->end - diagnostic->start));
1757
+ pm_buffer_append_u32(buffer, pm_ptrdifft_to_u32(diagnostic->start - parser->start));
1758
+ pm_buffer_append_u32(buffer, pm_ptrdifft_to_u32(diagnostic->end - diagnostic->start));
1759
1759
  }
1760
1760
 
1761
1761
  static void
1762
- yp_serialize_diagnostic_list(yp_parser_t *parser, yp_list_t *list, yp_buffer_t *buffer) {
1763
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(yp_list_size(list)));
1762
+ pm_serialize_diagnostic_list(pm_parser_t *parser, pm_list_t *list, pm_buffer_t *buffer) {
1763
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(pm_list_size(list)));
1764
1764
 
1765
- yp_diagnostic_t *diagnostic;
1766
- for (diagnostic = (yp_diagnostic_t *) list->head; diagnostic != NULL; diagnostic = (yp_diagnostic_t *) diagnostic->node.next) {
1767
- yp_serialize_diagnostic(parser, diagnostic, buffer);
1765
+ pm_diagnostic_t *diagnostic;
1766
+ for (diagnostic = (pm_diagnostic_t *) list->head; diagnostic != NULL; diagnostic = (pm_diagnostic_t *) diagnostic->node.next) {
1767
+ pm_serialize_diagnostic(parser, diagnostic, buffer);
1768
1768
  }
1769
1769
  }
1770
1770
 
1771
1771
  static void
1772
- yp_serialize_encoding(yp_encoding_t *encoding, yp_buffer_t *buffer) {
1772
+ pm_serialize_encoding(pm_encoding_t *encoding, pm_buffer_t *buffer) {
1773
1773
  size_t encoding_length = strlen(encoding->name);
1774
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(encoding_length));
1775
- yp_buffer_append_str(buffer, encoding->name, encoding_length);
1774
+ pm_buffer_append_u32(buffer, pm_sizet_to_u32(encoding_length));
1775
+ pm_buffer_append_str(buffer, encoding->name, encoding_length);
1776
1776
  }
1777
1777
 
1778
- #line 175 "serialize.c.erb"
1778
+ #line 179 "serialize.c.erb"
1779
1779
  void
1780
- yp_serialize_content(yp_parser_t *parser, yp_node_t *node, yp_buffer_t *buffer) {
1781
- yp_serialize_encoding(&parser->encoding, buffer);
1782
- yp_serialize_comment_list(parser, &parser->comment_list, buffer);
1783
- yp_serialize_diagnostic_list(parser, &parser->error_list, buffer);
1784
- yp_serialize_diagnostic_list(parser, &parser->warning_list, buffer);
1780
+ pm_serialize_content(pm_parser_t *parser, pm_node_t *node, pm_buffer_t *buffer) {
1781
+ pm_serialize_encoding(&parser->encoding, buffer);
1782
+ pm_serialize_comment_list(parser, &parser->comment_list, buffer);
1783
+ pm_serialize_diagnostic_list(parser, &parser->error_list, buffer);
1784
+ pm_serialize_diagnostic_list(parser, &parser->warning_list, buffer);
1785
1785
 
1786
1786
  // Here we're going to leave space for the offset of the constant pool in
1787
1787
  // the buffer.
1788
1788
  size_t offset = buffer->length;
1789
- yp_buffer_append_zeroes(buffer, 4);
1789
+ pm_buffer_append_zeroes(buffer, 4);
1790
1790
 
1791
1791
  // Next, encode the length of the constant pool.
1792
- yp_buffer_append_u32(buffer, yp_sizet_to_u32(parser->constant_pool.size));
1792
+ pm_buffer_append_u32(buffer, parser->constant_pool.size);
1793
1793
 
1794
1794
  // Now we're going to serialize the content of the node.
1795
- yp_serialize_node(parser, node, buffer);
1795
+ pm_serialize_node(parser, node, buffer);
1796
1796
 
1797
1797
  // Now we're going to serialize the offset of the constant pool back where
1798
1798
  // we left space for it.
1799
- uint32_t length = yp_sizet_to_u32(buffer->length);
1799
+ uint32_t length = pm_sizet_to_u32(buffer->length);
1800
1800
  memcpy(buffer->value + offset, &length, sizeof(uint32_t));
1801
1801
 
1802
1802
  // Now we're going to serialize the constant pool.
1803
1803
  offset = buffer->length;
1804
- yp_buffer_append_zeroes(buffer, parser->constant_pool.size * 8);
1804
+ pm_buffer_append_zeroes(buffer, parser->constant_pool.size * 8);
1805
1805
 
1806
- yp_constant_t *constant;
1807
- for (size_t index = 0; index < parser->constant_pool.capacity; index++) {
1808
- constant = &parser->constant_pool.constants[index];
1806
+ for (uint32_t index = 0; index < parser->constant_pool.capacity; index++) {
1807
+ pm_constant_pool_bucket_t *bucket = &parser->constant_pool.buckets[index];
1809
1808
 
1810
1809
  // If we find a constant at this index, serialize it at the correct
1811
1810
  // index in the buffer.
1812
- if (constant->id != 0) {
1813
- size_t buffer_offset = offset + ((((size_t) constant->id) - 1) * 8);
1811
+ if (bucket->id != 0) {
1812
+ pm_constant_t *constant = &parser->constant_pool.constants[bucket->id - 1];
1813
+ size_t buffer_offset = offset + ((((size_t)bucket->id) - 1) * 8);
1814
1814
 
1815
- if (constant->owned) {
1815
+ if (bucket->owned) {
1816
1816
  // Since this is an owned constant, we are going to write its
1817
1817
  // contents into the buffer after the constant pool. So
1818
1818
  // effectively in place of the source offset, we have a buffer
1819
1819
  // offset. We will add a leading 1 to indicate that this is a
1820
1820
  // buffer offset.
1821
- uint32_t content_offset = yp_sizet_to_u32(buffer->length);
1821
+ uint32_t content_offset = pm_sizet_to_u32(buffer->length);
1822
1822
  uint32_t owned_mask = (uint32_t) (1 << 31);
1823
1823
 
1824
1824
  assert(content_offset < owned_mask);
1825
1825
  content_offset |= owned_mask;
1826
1826
 
1827
1827
  memcpy(buffer->value + buffer_offset, &content_offset, 4);
1828
- yp_buffer_append_bytes(buffer, constant->start, constant->length);
1828
+ pm_buffer_append_bytes(buffer, constant->start, constant->length);
1829
1829
  } else {
1830
1830
  // Since this is a shared constant, we are going to write its
1831
1831
  // source offset directly into the buffer.
1832
- uint32_t source_offset = yp_ptrdifft_to_u32(constant->start - parser->start);
1832
+ uint32_t source_offset = pm_ptrdifft_to_u32(constant->start - parser->start);
1833
1833
  memcpy(buffer->value + buffer_offset, &source_offset, 4);
1834
1834
  }
1835
1835
 
1836
1836
  // Now we can write the length of the constant into the buffer.
1837
- uint32_t constant_length = yp_sizet_to_u32(constant->length);
1837
+ uint32_t constant_length = pm_sizet_to_u32(constant->length);
1838
1838
  memcpy(buffer->value + buffer_offset + 4, &constant_length, 4);
1839
1839
  }
1840
1840
  }
1841
1841
  }
1842
1842
 
1843
1843
  static void
1844
- serialize_token(void *data, yp_parser_t *parser, yp_token_t *token) {
1845
- yp_buffer_t *buffer = (yp_buffer_t *) data;
1844
+ serialize_token(void *data, pm_parser_t *parser, pm_token_t *token) {
1845
+ pm_buffer_t *buffer = (pm_buffer_t *) data;
1846
1846
 
1847
- yp_buffer_append_u32(buffer, token->type);
1848
- yp_buffer_append_u32(buffer, yp_ptrdifft_to_u32(token->start - parser->start));
1849
- yp_buffer_append_u32(buffer, yp_ptrdifft_to_u32(token->end - token->start));
1850
- yp_buffer_append_u32(buffer, parser->lex_state);
1847
+ pm_buffer_append_u32(buffer, token->type);
1848
+ pm_buffer_append_u32(buffer, pm_ptrdifft_to_u32(token->start - parser->start));
1849
+ pm_buffer_append_u32(buffer, pm_ptrdifft_to_u32(token->end - token->start));
1850
+ pm_buffer_append_u32(buffer, parser->lex_state);
1851
1851
  }
1852
1852
 
1853
- YP_EXPORTED_FUNCTION void
1854
- yp_lex_serialize(const uint8_t *source, size_t size, const char *filepath, yp_buffer_t *buffer) {
1855
- yp_parser_t parser;
1856
- yp_parser_init(&parser, source, size, filepath);
1853
+ PRISM_EXPORTED_FUNCTION void
1854
+ pm_lex_serialize(const uint8_t *source, size_t size, const char *filepath, pm_buffer_t *buffer) {
1855
+ pm_parser_t parser;
1856
+ pm_parser_init(&parser, source, size, filepath);
1857
1857
 
1858
- yp_lex_callback_t lex_callback = (yp_lex_callback_t) {
1858
+ pm_lex_callback_t lex_callback = (pm_lex_callback_t) {
1859
1859
  .data = (void *) buffer,
1860
1860
  .callback = serialize_token,
1861
1861
  };
1862
1862
 
1863
1863
  parser.lex_callback = &lex_callback;
1864
- yp_node_t *node = yp_parse(&parser);
1864
+ pm_node_t *node = pm_parse(&parser);
1865
1865
 
1866
1866
  // Append 0 to mark end of tokens
1867
- yp_buffer_append_u8(buffer, 0);
1867
+ pm_buffer_append_u8(buffer, 0);
1868
1868
 
1869
- yp_serialize_encoding(&parser.encoding, buffer);
1870
- yp_serialize_comment_list(&parser, &parser.comment_list, buffer);
1871
- yp_serialize_diagnostic_list(&parser, &parser.error_list, buffer);
1872
- yp_serialize_diagnostic_list(&parser, &parser.warning_list, buffer);
1869
+ pm_serialize_encoding(&parser.encoding, buffer);
1870
+ pm_serialize_comment_list(&parser, &parser.comment_list, buffer);
1871
+ pm_serialize_diagnostic_list(&parser, &parser.error_list, buffer);
1872
+ pm_serialize_diagnostic_list(&parser, &parser.warning_list, buffer);
1873
1873
 
1874
- yp_node_destroy(&parser, node);
1875
- yp_parser_free(&parser);
1874
+ pm_node_destroy(&parser, node);
1875
+ pm_parser_free(&parser);
1876
1876
  }
1877
1877
 
1878
1878
  // Parse and serialize both the AST and the tokens represented by the given
1879
1879
  // source to the given buffer.
1880
- YP_EXPORTED_FUNCTION void
1881
- yp_parse_lex_serialize(const uint8_t *source, size_t size, yp_buffer_t *buffer, const char *metadata) {
1882
- yp_parser_t parser;
1883
- yp_parser_init(&parser, source, size, NULL);
1884
- if (metadata) yp_parser_metadata(&parser, metadata);
1880
+ PRISM_EXPORTED_FUNCTION void
1881
+ pm_parse_lex_serialize(const uint8_t *source, size_t size, pm_buffer_t *buffer, const char *metadata) {
1882
+ pm_parser_t parser;
1883
+ pm_parser_init(&parser, source, size, NULL);
1884
+ if (metadata) pm_parser_metadata(&parser, metadata);
1885
1885
 
1886
- yp_lex_callback_t lex_callback = (yp_lex_callback_t) {
1886
+ pm_lex_callback_t lex_callback = (pm_lex_callback_t) {
1887
1887
  .data = (void *) buffer,
1888
1888
  .callback = serialize_token,
1889
1889
  };
1890
1890
 
1891
1891
  parser.lex_callback = &lex_callback;
1892
- yp_node_t *node = yp_parse(&parser);
1892
+ pm_node_t *node = pm_parse(&parser);
1893
1893
 
1894
- yp_buffer_append_u8(buffer, 0);
1895
- yp_serialize(&parser, node, buffer);
1894
+ pm_buffer_append_u8(buffer, 0);
1895
+ pm_serialize(&parser, node, buffer);
1896
1896
 
1897
- yp_node_destroy(&parser, node);
1898
- yp_parser_free(&parser);
1897
+ pm_node_destroy(&parser, node);
1898
+ pm_parser_free(&parser);
1899
1899
  }