build library

Build-time API for selected Dart libraries.

Source annotations use package:napi/napi.dart. External selections leave the target library unchanged. This entrypoint belongs in the separate build script running on the Dart VM.

Classes

BuiltModule
ExternalClass
Select a class or concrete class alias and its own public members.
ExternalDeclaration
ExternalFunction
Select a top-level function or an explicitly specialized callable const.
ExternalLibrary
Static selections for an existing library, without changing its source.
ExternalMember
NAPI
Selects a public function, concrete callable const or class for a napi binding.
SourceLocation
Location in the original input, rather than generated code.

Enums

BuildTarget
ClassPolicy
Requested boundary behavior for a selected Dart class.

Functions

assembleNativePackage({required BuiltModule module, required Directory output, required Map<String, Object?> metadata, Map<String, File> assets = const {}}) → Future<Directory>
Assemble one native target without backend fallback or install scripts.
assembleWasmPackage({required BuiltModule module, required Directory output, required Map<String, Object?> metadata, Map<String, File> assets = const {}}) → Future<Directory>
Assemble an npm package from an already built Dart Wasm module.
buildLibrary({required Uri library, required Directory output, String? packagesPath, ExternalLibrary? external, BuildTarget target = builder.BuildTarget.wasm, Directory? nativeRuntime}) → Future<BuiltModule>
Build a library's selected declarations or rebuild a managed module.
buildPackage({required Uri library, required Directory output, required Map<String, Object?> metadata, Map<String, File> assets = const {}, String? packagesPath, ExternalLibrary? external, BuildTarget target = BuildTarget.wasm, Set<BuildTarget>? targets, Directory? nativeRuntime}) → Future<Directory>
Build and assemble an npm package, or atomically rebuild a managed package.

Exceptions / Errors

BindingDiagnostic