Package com.apollographql.apollo3.compiler
Types
Controls how scalar adapters are used in the generated code.
metadata generated by a previous run of ApolloCompiler. The schema and fragments are stored as GraphQL document strings. This slightly unfortunate because that means we will parse them twice but there isn't many alternatives as validation and IR-building takes GQLDocuments as inputs. A future version could serialize GQLNode as json in order to keep the SourceLocation attributes and display better error messages
Options that must be common to all modules
Compilation unit specific metadata that is specific to a given invocation of the compiler
The adapter expression will be used as-is (can be an object, a public val, a class instantiation).
These are the options that should be the same in all modules.
A class that generates OperationOutput to compute the operationIds. OperationOutputGenerator works with a collection of OperationDescriptor for implementation that need to batch compute the operationIds. For an example to send all the operation at once to a backend for whitelisting.
A PackageNameGenerator computes the package name for a given file. Files can be either
A helper class to get a package name from a list of root folders
The adapter instance will be looked up in the com.apollographql.apollo3.api.CustomScalarAdapters provided at runtime.
Functions
A variation of String.capitalize that:
A variation of String.decapitalize that: