run method
Future<void>
run({
- required BuildInput input,
- required BuildOutputBuilder output,
- required Logger? logger,
Runs this build.
Reads the input from input, streams output to output, and streams
logs to logger.
Implementation
@override
Future<void> run({
required BuildInput input,
required BuildOutputBuilder output,
required Logger? logger,
}) async {
final code = input.config.code;
if (!input.config.buildCodeAssets) {
_logInfo(
logger,
'Skipping native_prebuilt: buildCodeAssets is disabled.',
);
return;
}
// Delegate to NativeProjectBuilder for the actual work.
// This ensures both PrebuiltCodeAssetBuilder and NativeProjectBuilder
// use the same resolution and build logic.
final builder = NativeProjectBuilder.fromSourceFallback(
assetName: assetName,
libraryStem: libraryStem,
manifest: manifest,
linkMode: linkModeResolver(code),
sourceFallback: sourceFallback,
resolvers: resolvers,
localDirectoryName: localDirectoryName,
);
await builder.run(input: input, output: output, logger: logger);
}