Skip to content

Commit 78af84e

Browse files
committed
Reverse schemagen default to not generate stubs
1 parent c623c00 commit 78af84e

File tree

3 files changed

+22
-22
lines changed

3 files changed

+22
-22
lines changed

include/SchemaGenerator.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ struct GeneratorOptions
2121
const std::optional<GeneratorPaths> paths;
2222
const bool verbose = false;
2323
const bool separateFiles = false;
24-
const bool noStubs = false;
24+
const bool stubs = false;
2525
const bool noIntrospection = false;
2626
};
2727

samples/CMakeLists.txt

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,14 @@ if(GRAPHQL_UPDATE_SAMPLES)
1111
OUTPUT
1212
${CMAKE_CURRENT_BINARY_DIR}/unified/TodaySchema.cpp
1313
${CMAKE_CURRENT_BINARY_DIR}/unified/TodaySchema.h
14-
COMMAND schemagen --schema="${CMAKE_CURRENT_SOURCE_DIR}/schema.today.graphql" --prefix="Today" --namespace="today"
14+
COMMAND schemagen --schema="${CMAKE_CURRENT_SOURCE_DIR}/schema.today.graphql" --prefix="Today" --namespace="today" --stubs
1515
COMMAND ${CMAKE_COMMAND} -E copy_if_different
1616
TodaySchema.cpp
1717
TodaySchema.h
1818
${CMAKE_CURRENT_SOURCE_DIR}/unified
1919
DEPENDS schemagen graphqlpeg schema.today.graphql
2020
WORKING_DIRECTORY unified
21-
COMMENT "Generating mock TodaySchema files")
21+
COMMENT "Generating mock TodaySchema files (--stubs)")
2222

2323
# unifiedschema_nointrospection
2424
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/unified_nointrospection)
@@ -27,14 +27,14 @@ if(GRAPHQL_UPDATE_SAMPLES)
2727
OUTPUT
2828
${CMAKE_CURRENT_BINARY_DIR}/unified_nointrospection/TodaySchema.cpp
2929
${CMAKE_CURRENT_BINARY_DIR}/unified_nointrospection/TodaySchema.h
30-
COMMAND schemagen --schema="${CMAKE_CURRENT_SOURCE_DIR}/schema.today.graphql" --prefix="Today" --namespace="today" --no-introspection
30+
COMMAND schemagen --schema="${CMAKE_CURRENT_SOURCE_DIR}/schema.today.graphql" --prefix="Today" --namespace="today" --stubs --no-introspection
3131
COMMAND ${CMAKE_COMMAND} -E copy_if_different
3232
TodaySchema.cpp
3333
TodaySchema.h
3434
${CMAKE_CURRENT_SOURCE_DIR}/unified_nointrospection
3535
DEPENDS schemagen graphqlpeg schema.today.graphql
3636
WORKING_DIRECTORY unified_nointrospection
37-
COMMENT "Generating mock TodaySchema files without Introspection (--no-introspection)")
37+
COMMENT "Generating mock TodaySchema files without Introspection (--stubs --no-introspection)")
3838

3939
# validationschema
4040
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/validation)
@@ -43,47 +43,47 @@ if(GRAPHQL_UPDATE_SAMPLES)
4343
OUTPUT
4444
${CMAKE_CURRENT_BINARY_DIR}/validation/ValidationSchema.cpp
4545
${CMAKE_CURRENT_BINARY_DIR}/validation/ValidationSchema.h
46-
COMMAND schemagen --schema="${CMAKE_CURRENT_SOURCE_DIR}/schema.validation.graphql" --prefix="Validation" --namespace="validation"
46+
COMMAND schemagen --schema="${CMAKE_CURRENT_SOURCE_DIR}/schema.validation.graphql" --prefix="Validation" --namespace="validation" --stubs
4747
COMMAND ${CMAKE_COMMAND} -E copy_if_different
4848
ValidationSchema.cpp
4949
ValidationSchema.h
5050
${CMAKE_CURRENT_SOURCE_DIR}/validation
5151
DEPENDS schemagen graphqlpeg schema.validation.graphql
5252
WORKING_DIRECTORY validation
53-
COMMENT "Generating ValidationSchema files")
53+
COMMENT "Generating ValidationSchema files (--stubs)")
5454

5555
# separateschema
5656
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/separate)
5757

5858
add_custom_command(
5959
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/separate/today_schema_files
60-
COMMAND schemagen --schema="${CMAKE_CURRENT_SOURCE_DIR}/schema.today.graphql" --prefix="Today" --namespace="today" --separate-files > today_schema_files
60+
COMMAND schemagen --schema="${CMAKE_CURRENT_SOURCE_DIR}/schema.today.graphql" --prefix="Today" --namespace="today" --separate-files --stubs > today_schema_files
6161
COMMAND ${CMAKE_COMMAND} -E copy_if_different today_schema_files ${CMAKE_CURRENT_SOURCE_DIR}/separate
6262
DEPENDS schemagen graphqlpeg schema.today.graphql
6363
WORKING_DIRECTORY separate
64-
COMMENT "Generating mock TodaySchema (--separate-files)")
64+
COMMENT "Generating mock TodaySchema (--stubs --separate-files)")
6565

6666
# separateschema_nointrospection
6767
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/separate_nointrospection)
6868

6969
add_custom_command(
7070
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/separate_nointrospection/today_schema_files
71-
COMMAND schemagen --schema="${CMAKE_CURRENT_SOURCE_DIR}/schema.today.graphql" --prefix="Today" --namespace="today" --no-introspection --separate-files > today_schema_files
71+
COMMAND schemagen --schema="${CMAKE_CURRENT_SOURCE_DIR}/schema.today.graphql" --prefix="Today" --namespace="today" --no-introspection --separate-files --stubs > today_schema_files
7272
COMMAND ${CMAKE_COMMAND} -E copy_if_different today_schema_files ${CMAKE_CURRENT_SOURCE_DIR}/separate_nointrospection
7373
DEPENDS schemagen graphqlpeg schema.today.graphql
7474
WORKING_DIRECTORY separate_nointrospection
75-
COMMENT "Generating mock TodaySchema without Introspection (--no-introspection --separate-files)")
75+
COMMENT "Generating mock TodaySchema without Introspection (--stubs --separate-files --no-introspection)")
7676

7777
# learn
7878
file(MAKE_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/learn)
7979

8080
add_custom_command(
8181
OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/learn/learn_schema_files
82-
COMMAND schemagen --schema="${CMAKE_CURRENT_SOURCE_DIR}/schema.learn.graphql" --prefix="StarWars" --namespace="learn" --no-stubs --separate-files > learn_schema_files
82+
COMMAND schemagen --schema="${CMAKE_CURRENT_SOURCE_DIR}/schema.learn.graphql" --prefix="StarWars" --namespace="learn" --separate-files > learn_schema_files
8383
COMMAND ${CMAKE_COMMAND} -E copy_if_different learn_schema_files ${CMAKE_CURRENT_SOURCE_DIR}/learn
8484
DEPENDS schemagen graphqlpeg schema.learn.graphql
8585
WORKING_DIRECTORY learn
86-
COMMENT "Generating mock StarWarsSchema (--no-stubs --separate-files)")
86+
COMMENT "Generating mock StarWarsSchema (--separate-files)")
8787

8888
add_custom_command(
8989
OUTPUT updated_samples

src/SchemaGenerator.cpp

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -806,7 +806,7 @@ void Generator::outputObjectDeclaration(
806806
}
807807
else)cpp";
808808

809-
if (_options.noStubs)
809+
if (!_options.stubs)
810810
{
811811
headerFile << R"cpp(
812812
{
@@ -835,7 +835,7 @@ void Generator::outputObjectDeclaration(
835835
headerFile << R"cpp() };
836836
})cpp";
837837

838-
if (!_options.noStubs)
838+
if (_options.stubs)
839839
{
840840
headerFile << R"cpp(
841841
else
@@ -1505,8 +1505,7 @@ Operations::Operations()cpp";
15051505
{
15061506
bool firstValue = true;
15071507

1508-
sourceFile << R"cpp( type)cpp" << unionType.cppType
1509-
<< R"cpp(->AddPossibleTypes({
1508+
sourceFile << R"cpp( type)cpp" << unionType.cppType << R"cpp(->AddPossibleTypes({
15101509
)cpp";
15111510

15121511
for (const auto& unionOption : unionType.options)
@@ -2655,7 +2654,7 @@ int main(int argc, char** argv)
26552654
bool showVersion = false;
26562655
bool buildIntrospection = false;
26572656
bool buildCustom = false;
2658-
bool noStubs = false;
2657+
bool stubs = false;
26592658
bool verbose = false;
26602659
bool separateFiles = false;
26612660
bool noIntrospection = false;
@@ -2680,9 +2679,10 @@ int main(int argc, char** argv)
26802679
po::value(&sourceDir),
26812680
"Target path for the <prefix>Schema.cpp source file")("header-dir",
26822681
po::value(&headerDir),
2683-
"Target path for the <prefix>Schema.h header file")("no-stubs",
2684-
po::bool_switch(&noStubs),
2685-
"Generate abstract classes without stub implementations")("separate-files",
2682+
"Target path for the <prefix>Schema.h header file")("stubs",
2683+
po::bool_switch(&stubs),
2684+
"Unimplemented fields throw runtime exceptions instead of compiler errors")(
2685+
"separate-files",
26862686
po::bool_switch(&separateFiles),
26872687
"Generate separate files for each of the types")("no-introspection",
26882688
po::bool_switch(&noIntrospection),
@@ -2765,7 +2765,7 @@ int main(int argc, char** argv)
27652765
std::move(sourceDir) },
27662766
verbose,
27672767
separateFiles,
2768-
noStubs,
2768+
stubs,
27692769
noIntrospection,
27702770
})
27712771
.Build();

0 commit comments

Comments
 (0)