summaryrefslogtreecommitdiff
path: root/prism/templates/src
diff options
context:
space:
mode:
authorKevin Newton <kddnewton@gmail.com>2024-02-21 10:12:29 -0500
committergit <svn-admin@ruby-lang.org>2024-02-21 15:22:41 +0000
commitbf680af7b2ef41339481ab013c15934d84dec5dd (patch)
treebeea02579e76c0a01ae65961ff2fb0ca354fc221 /prism/templates/src
parent402690c3b60b61dce3a251acb46bfe9a615a25bb (diff)
[ruby/prism] Remove non-ASCII characters from --dump=parsetree
https://github.com/ruby/prism/commit/6d4cd21e98
Diffstat (limited to 'prism/templates/src')
-rw-r--r--prism/templates/src/prettyprint.c.erb29
1 files changed, 11 insertions, 18 deletions
diff --git a/prism/templates/src/prettyprint.c.erb b/prism/templates/src/prettyprint.c.erb
index 7da92ffb77..c6dd5facef 100644
--- a/prism/templates/src/prettyprint.c.erb
+++ b/prism/templates/src/prettyprint.c.erb
@@ -29,29 +29,29 @@ prettyprint_node(pm_buffer_t *output_buffer, const pm_parser_t *parser, const pm
prettyprint_location(output_buffer, parser, &node->location);
pm_buffer_append_string(output_buffer, ")\n", 2);
<%- node.fields.each_with_index do |field, index| -%>
- <%- pointer, preadd, preadd_bytesize = index == node.fields.length - 1 ? ["\\xe2\\x94\\x94\\xe2\\x94\\x80\\xe2\\x94\\x80 ", " ", 4] : ["\\xe2\\x94\\x9c\\xe2\\x94\\x80\\xe2\\x94\\x80 ", "\\xe2\\x94\\x82 ", 6] -%>
+ <%- preadd = index == node.fields.length - 1 ? " " : "| " -%>
// <%= field.name %>
{
pm_buffer_concat(output_buffer, prefix_buffer);
- pm_buffer_append_string(output_buffer, "<%= pointer %><%= field.name %>:", <%= 10 + field.name.length + 1 %>);
+ pm_buffer_append_string(output_buffer, "+-- <%= field.name %>:", <%= 4 + field.name.length + 1 %>);
<%- case field -%>
<%- when Prism::NodeField -%>
pm_buffer_append_byte(output_buffer, '\n');
size_t prefix_length = prefix_buffer->length;
- pm_buffer_append_string(prefix_buffer, "<%= preadd %>", <%= preadd_bytesize %>);
+ pm_buffer_append_string(prefix_buffer, "<%= preadd %>", 4);
pm_buffer_concat(output_buffer, prefix_buffer);
prettyprint_node(output_buffer, parser, (pm_node_t *) cast-><%= field.name %>, prefix_buffer);
prefix_buffer->length = prefix_length;
<%- when Prism::OptionalNodeField -%>
if (cast-><%= field.name %> == NULL) {
- pm_buffer_append_string(output_buffer, " \xe2\x88\x85\n", 5);
+ pm_buffer_append_string(output_buffer, " nil\n", 5);
} else {
pm_buffer_append_byte(output_buffer, '\n');
size_t prefix_length = prefix_buffer->length;
- pm_buffer_append_string(prefix_buffer, "<%= preadd %>", <%= preadd_bytesize %>);
+ pm_buffer_append_string(prefix_buffer, "<%= preadd %>", 4);
pm_buffer_concat(output_buffer, prefix_buffer);
prettyprint_node(output_buffer, parser, (pm_node_t *) cast-><%= field.name %>, prefix_buffer);
prefix_buffer->length = prefix_length;
@@ -66,17 +66,10 @@ prettyprint_node(pm_buffer_t *output_buffer, const pm_parser_t *parser, const pm
size_t last_index = cast-><%= field.name %>.size;
for (uint32_t index = 0; index < last_index; index++) {
size_t prefix_length = prefix_buffer->length;
- pm_buffer_append_string(prefix_buffer, "<%= preadd %>", <%= preadd_bytesize %>);
+ pm_buffer_append_string(prefix_buffer, "<%= preadd %>", 4);
pm_buffer_concat(output_buffer, prefix_buffer);
-
- if (index == last_index - 1) {
- pm_buffer_append_string(output_buffer, "\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80 ", 10);
- pm_buffer_append_string(prefix_buffer, " ", 4);
- } else {
- pm_buffer_append_string(output_buffer, "\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80 ", 10);
- pm_buffer_append_string(prefix_buffer, "\xe2\x94\x82 ", 6);
- }
-
+ pm_buffer_append_string(output_buffer, "+-- ", 4);
+ pm_buffer_append_string(prefix_buffer, (index == last_index - 1) ? " " : "| ", 4);
prettyprint_node(output_buffer, parser, (pm_node_t *) cast-><%= field.name %>.nodes[index], prefix_buffer);
prefix_buffer->length = prefix_length;
}
@@ -86,7 +79,7 @@ prettyprint_node(pm_buffer_t *output_buffer, const pm_parser_t *parser, const pm
pm_buffer_append_byte(output_buffer, '\n');
<%- when Prism::OptionalConstantField -%>
if (cast-><%= field.name %> == 0) {
- pm_buffer_append_string(output_buffer, " \xe2\x88\x85\n", 5);
+ pm_buffer_append_string(output_buffer, " nil\n", 5);
} else {
pm_buffer_append_byte(output_buffer, ' ');
prettyprint_constant(output_buffer, parser, cast-><%= field.name %>);
@@ -109,7 +102,7 @@ prettyprint_node(pm_buffer_t *output_buffer, const pm_parser_t *parser, const pm
<%- when Prism::OptionalLocationField -%>
pm_location_t *location = &cast-><%= field.name %>;
if (location->start == NULL) {
- pm_buffer_append_string(output_buffer, " \xe2\x88\x85\n", 5);
+ pm_buffer_append_string(output_buffer, " nil\n", 5);
} else {
pm_buffer_append_byte(output_buffer, ' ');
prettyprint_location(output_buffer, parser, location);
@@ -131,7 +124,7 @@ prettyprint_node(pm_buffer_t *output_buffer, const pm_parser_t *parser, const pm
found = true;
}
<%- end -%>
- if (!found) pm_buffer_append_string(output_buffer, " \xe2\x88\x85", 4);
+ if (!found) pm_buffer_append_string(output_buffer, " nil", 4);
pm_buffer_append_byte(output_buffer, '\n');
<%- else -%>
<%- raise -%>