aboutsummaryrefslogtreecommitdiff
path: root/src/main.cpp
diff options
context:
space:
mode:
authorgingerBill <bill@gingerbill.org>2019-05-25 20:28:49 +0100
committergingerBill <bill@gingerbill.org>2019-05-25 20:28:49 +0100
commit426c1ed6f407bcfd3c98e266075f9e9f2cca711c (patch)
tree694d204ceb133aa39371e914540926688dd5d708 /src/main.cpp
parent458ec5922e69f105ca92d348e475693dfa252ad0 (diff)
-compact flag for 'odin query'
Diffstat (limited to 'src/main.cpp')
-rw-r--r--src/main.cpp13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/main.cpp b/src/main.cpp
index 49284b9d6..e557cd25e 100644
--- a/src/main.cpp
+++ b/src/main.cpp
@@ -218,6 +218,7 @@ enum BuildFlagKind {
BuildFlag_UseLLD,
BuildFlag_Vet,
BuildFlag_IgnoreUnknownAttributes,
+ BuildFlag_Compact,
#if defined(GB_SYSTEM_WINDOWS)
BuildFlag_ResourceFile,
@@ -302,6 +303,7 @@ bool parse_build_flags(Array<String> args) {
add_flag(&build_flags, BuildFlag_UseLLD, str_lit("lld"), BuildFlagParam_None);
add_flag(&build_flags, BuildFlag_Vet, str_lit("vet"), BuildFlagParam_None);
add_flag(&build_flags, BuildFlag_IgnoreUnknownAttributes, str_lit("ignore-unknown-attributes"), BuildFlagParam_None);
+ add_flag(&build_flags, BuildFlag_Compact, str_lit("compact"), BuildFlagParam_None);
#if defined(GB_SYSTEM_WINDOWS)
add_flag(&build_flags, BuildFlag_ResourceFile, str_lit("resource"), BuildFlagParam_String);
@@ -664,6 +666,15 @@ bool parse_build_flags(Array<String> args) {
build_context.ignore_unknown_attributes = true;
break;
+ case BuildFlag_Compact:
+ if (!build_context.print_query_data) {
+ gb_printf_err("Invalid use of -compact flag, only allowed with 'odin query'\n");
+ bad_flags = true;
+ } else {
+ build_context.print_query_data_compact = true;
+ }
+ break;
+
#if defined(GB_SYSTEM_WINDOWS)
case BuildFlag_ResourceFile: {
GB_ASSERT(value.kind == ExactValue_String);
@@ -1239,7 +1250,7 @@ void generate_and_print_query_data(Checker *c, Timings *timings) {
}
- print_query_data_as_json(root, true);
+ print_query_data_as_json(root, !build_context.print_query_data_compact);
gb_printf("\n");
}