diff options
author | Marvin Borner | 2023-05-23 23:41:12 +0200 |
---|---|---|
committer | Marvin Borner | 2023-05-23 23:41:12 +0200 |
commit | d239d5da765ddc389195d7121d517e16c674f50e (patch) | |
tree | 1195b0c250940ea7cf02d35ec32bd5a3e98ef250 | |
parent | c1ce8eb719a95b22fea8e6220bf407d2eb7447b3 (diff) |
Made stdout default instead of `out` file
-rw-r--r-- | options.ggo | 2 | ||||
-rw-r--r-- | src/main.c | 4 | ||||
-rw-r--r-- | src/print.c | 28 |
3 files changed, 17 insertions, 17 deletions
diff --git a/options.ggo b/options.ggo index 7cf6b77..4e275c7 100644 --- a/options.ggo +++ b/options.ggo @@ -3,7 +3,7 @@ version "1.0" purpose "Tool for converting to/from BLC and BLoC" option "input" i "input file" string required -option "output" o "output file" default="out" string optional +option "output" o "output file" string optional option "verbose" v "enable debug logging output" flag off option "from-blc" b "convert from BLC to BLoC" flag off option "from-bloc" B "convert from BLoC to BLC" flag off @@ -134,7 +134,7 @@ static void from_blc(char *input, char *output_path) debug("optimizing tree\n"); struct list *table = optimize_tree(tree, &all_trees); - FILE *file = fopen(output_path, "wb"); + FILE *file = output_path ? fopen(output_path, "wb") : stdout; write_bloc(table, file); fclose(file); @@ -153,7 +153,7 @@ static void from_bloc(char *input, char *output_path, int dump) if (dump) print_bloc(bloc); - FILE *file = fopen(output_path, "wb"); + FILE *file = output_path ? fopen(output_path, "wb") : stdout; write_blc(bloc, file); fclose(file); diff --git a/src/print.c b/src/print.c index d73f9c5..2b094e2 100644 --- a/src/print.c +++ b/src/print.c @@ -10,22 +10,22 @@ void print_bruijn(struct term *term) { switch (term->type) { case ABS: - printf("["); + fprintf(stderr, "["); print_bruijn(term->u.abs.term); - printf("]"); + fprintf(stderr, "]"); break; case APP: - printf("("); + fprintf(stderr, "("); print_bruijn(term->u.app.lhs); - printf(" "); + fprintf(stderr, " "); print_bruijn(term->u.app.rhs); - printf(")"); + fprintf(stderr, ")"); break; case VAR: - printf("%d", term->u.var.index); + fprintf(stderr, "%d", term->u.var.index); break; case REF: - printf("<%ld>", term->u.ref.index); + fprintf(stderr, "<%ld>", term->u.ref.index); break; default: fatal("invalid type %d\n", term->type); @@ -56,15 +56,15 @@ void print_blc(struct term *term) void print_bloc(struct bloc_parsed *bloc) { - printf("\n=== START BLOC ===\n"); - printf("| entries:\t%ld\n", bloc->length); + fprintf(stderr, "\n=== START BLOC ===\n"); + fprintf(stderr, "| entries:\t%ld\n", bloc->length); for (size_t i = 0; i < bloc->length - 1; i++) { - printf("| entry %ld:\t", bloc->length - i - 2); + fprintf(stderr, "| entry %ld:\t", bloc->length - i - 2); print_bruijn(bloc->entries[i]); - printf("\n"); + fprintf(stderr, "\n"); } - printf("| final:\t"); + fprintf(stderr, "| final:\t"); print_bruijn(bloc->entries[bloc->length - 1]); - printf("\n"); - printf("=== END BLOC ===\n\n"); + fprintf(stderr, "\n"); + fprintf(stderr, "=== END BLOC ===\n\n"); } |