BuildConfig.build constructor
BuildConfig.build({
- required Uri outputDirectory,
- required String packageName,
- required Uri packageRoot,
- required BuildMode buildMode,
- required Architecture targetArchitecture,
- required OS targetOS,
- IOSSdk? targetIOSSdk,
- int? targetAndroidNdkApi,
- CCompilerConfig? cCompiler,
- required LinkModePreference linkModePreference,
- Map<
String, Map< ? dependencyMetadata,String, Object> > - Iterable<
String> ? supportedAssetTypes,
Constructs a config for a non-dry run by providing values for each field.
Build hooks will most likely use build instead of this constructor. However, for unit testing code which consumes a BuildConfig, this constructor facilitates easy construction.
For the documentation of the parameters, see the equally named fields.
Parameter dependencyMetadata
must be a nested map {'packageName' : {'key' : 'value'}}
where packageName
and key
correspond to the
parameters in metadatum.
Implementation
factory BuildConfig.build({
required Uri outputDirectory,
required String packageName,
required Uri packageRoot,
required BuildMode buildMode,
required Architecture targetArchitecture,
required OS targetOS,
IOSSdk? targetIOSSdk,
int? targetAndroidNdkApi,
CCompilerConfig? cCompiler,
required LinkModePreference linkModePreference,
Map<String, Map<String, Object>>? dependencyMetadata,
Iterable<String>? supportedAssetTypes,
}) =>
BuildConfigImpl(
outputDirectory: outputDirectory,
packageName: packageName,
packageRoot: packageRoot,
buildMode: buildMode as BuildModeImpl,
targetArchitecture: targetArchitecture as ArchitectureImpl,
targetOS: targetOS as OSImpl,
targetIOSSdk: targetIOSSdk as IOSSdkImpl?,
targetAndroidNdkApi: targetAndroidNdkApi,
cCompiler: cCompiler as CCompilerConfigImpl?,
linkModePreference: linkModePreference as LinkModePreferenceImpl,
dependencyMetadata: dependencyMetadata != null
? {
for (final entry in dependencyMetadata.entries)
entry.key: Metadata(entry.value.cast())
}
: null,
supportedAssetTypes: supportedAssetTypes,
);