Files
sdk/pkg/macros/README.md
T
Konstantin Shcheglov 36c0788137 add package:_macros (SDK vendored) and package:macros (pub published)
add sdk_packages.yaml file (describes SDK vendored package locations)

delete old macro code in _fe_analyzer_shared, move tests/benchmarks

adds a top level `pkg` directory to the Dart SDK, which is where vendored packages live

BUG: https://github.com/dart-lang/sdk/issues/54976
Change-Id: Ib3503a27fb5644fa8a39ab5a3e5b568df330cfd6
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/359040
Auto-Submit: Jake Macdonald <jakemac@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Jonas Termansen <sortie@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Bob Nystrom <rnystrom@google.com>
Commit-Queue: Jake Macdonald <jakemac@google.com>
Reviewed-by: Devon Carew <devoncarew@google.com>
2024-03-26 18:40:00 +00:00

977 B

☠☠ Warning: This package is experimental and may not be available in a future version of Dart. ☠☠

This package is for macro authors, and exposes the APIs necessary to write a macro. Specifically, it exports the private _macros SDK vendored package.

Macro authors

Macro authors can use normal constraints on this package, and should only import the package:macros/macros.dart file.

Note that the versions of this package are tied directly to your SDK version, so you won't be able to get new feature releases without updating your SDK.

Compilers and tools

This package also exposes some "private" sources (under lib/src), intended only for use by compilers and tools, in order to bootstrap and execute macros.

When depending on these "private" sources, a more narrow constraint should be used, which constraints to feature releases (which means patch versions until such time as this package goes to 1.0.0). For example, macros: ">=0.1.1 <0.1.2".