summaryrefslogtreecommitdiff
path: root/prism/templates/src
diff options
context:
space:
mode:
Diffstat (limited to 'prism/templates/src')
-rw-r--r--prism/templates/src/node.c.erb23
-rw-r--r--prism/templates/src/prettyprint.c.erb31
2 files changed, 4 insertions, 50 deletions
diff --git a/prism/templates/src/node.c.erb b/prism/templates/src/node.c.erb
index 554645c3e7..f9c58c82e1 100644
--- a/prism/templates/src/node.c.erb
+++ b/prism/templates/src/node.c.erb
@@ -277,28 +277,7 @@ pm_dump_json(pm_buffer_t *buffer, const pm_parser_t *parser, const pm_node_t *no
<%- end -%>
pm_buffer_append_byte(buffer, ']');
<%- when Prism::IntegerField -%>
- {
- const pm_integer_t *integer = &cast-><%= field.name %>;
- if (integer->length == 0) {
- if (integer->negative) pm_buffer_append_byte(buffer, '-');
- pm_buffer_append_string(buffer, "%" PRIu32, integer->head.value);
- } else if (integer->length == 1) {
- if (integer->negative) pm_buffer_append_byte(buffer, '-');
- pm_buffer_append_format(buffer, "%" PRIu64, ((uint64_t) integer->head.value) | (((uint64_t) integer->head.next->value) << 32));
- } else {
- pm_buffer_append_byte(buffer, '{');
- pm_buffer_append_format(buffer, "\"negative\": %s", integer->negative ? "true" : "false");
- pm_buffer_append_string(buffer, ",\"values\":[", 11);
-
- const pm_integer_word_t *node = &integer->head;
- while (node != NULL) {
- pm_buffer_append_format(buffer, "%" PRIu32, node->value);
- node = node->next;
- if (node != NULL) pm_buffer_append_byte(buffer, ',');
- }
- pm_buffer_append_string(buffer, "]}", 2);
- }
- }
+ pm_integer_string(buffer, &cast-><%= field.name %>);
<%- when Prism::DoubleField -%>
pm_buffer_append_format(buffer, "%f", cast-><%= field.name %>);
<%- else -%>
diff --git a/prism/templates/src/prettyprint.c.erb b/prism/templates/src/prettyprint.c.erb
index 67a2f444e6..2278d0d38c 100644
--- a/prism/templates/src/prettyprint.c.erb
+++ b/prism/templates/src/prettyprint.c.erb
@@ -128,34 +128,9 @@ prettyprint_node(pm_buffer_t *output_buffer, const pm_parser_t *parser, const pm
pm_buffer_append_byte(output_buffer, '\n');
<%- when Prism::IntegerField -%>
const pm_integer_t *integer = &cast-><%= field.name %>;
- if (integer->length == 0) {
- pm_buffer_append_byte(output_buffer, ' ');
- if (integer->negative) pm_buffer_append_byte(output_buffer, '-');
- pm_buffer_append_format(output_buffer, "%" PRIu32 "\n", integer->head.value);
- } else if (integer->length == 1) {
- pm_buffer_append_byte(output_buffer, ' ');
- if (integer->negative) pm_buffer_append_byte(output_buffer, '-');
- pm_buffer_append_format(output_buffer, "%" PRIu64 "\n", ((uint64_t) integer->head.value) | (((uint64_t) integer->head.next->value) << 32));
- } else {
- pm_buffer_append_byte(output_buffer, ' ');
-
- const pm_integer_word_t *node = &integer->head;
- uint32_t index = 0;
-
- while (node != NULL) {
- if (index != 0) pm_buffer_append_string(output_buffer, " | ", 3);
- pm_buffer_append_format(output_buffer, "%" PRIu32, node->value);
-
- if (index != 0) {
- pm_buffer_append_string(output_buffer, " << ", 4);
- pm_buffer_append_format(output_buffer, "%" PRIu32, index * 32);
- }
-
- node = node->next;
- index++;
- }
- pm_buffer_append_string(output_buffer, "]\n", 2);
- }
+ pm_buffer_append_byte(output_buffer, ' ');
+ pm_integer_string(output_buffer, integer);
+ pm_buffer_append_byte(output_buffer, '\n');
<%- when Prism::DoubleField -%>
pm_buffer_append_format(output_buffer, " %f\n", cast-><%= field.name %>);
<%- else -%>