Merge pull request #77574 from allevato/synth-api-options

[Frontend] Add some printing/vistation options to `swift-synthesize-interface`.
This commit is contained in:
Tony Allevato
2024-11-13 11:54:58 -05:00
committed by GitHub
8 changed files with 90 additions and 3 deletions

View File

@@ -200,11 +200,19 @@ int swift_synthesize_interface_main(ArrayRef<const char *> Args,
return EXIT_FAILURE;
}
StreamPrinter printer(fs);
PrintOptions printOpts =
PrintOptions::printModuleInterface(/*printFullConvention=*/true);
ide::printModuleInterface(M, /*GroupNames=*/{},
/*TraversalOptions=*/std::nullopt, printer,
if (ParsedArgs.hasArg(OPT_print_fully_qualified_types)) {
printOpts.FullyQualifiedTypes = true;
}
swift::OptionSet<swift::ide::ModuleTraversal> traversalOpts = std::nullopt;
if (ParsedArgs.hasArg(OPT_include_submodules)) {
traversalOpts = swift::ide::ModuleTraversal::VisitSubmodules;
}
StreamPrinter printer(fs);
ide::printModuleInterface(M, /*GroupNames=*/{}, traversalOpts, printer,
printOpts, /*PrintSynthesizedExtensions=*/false);
return EXIT_SUCCESS;