Crate wesl_metadata

Source
Expand description

Structured access to the output of wesl metadata.

§Examples

Get the current package’s metadata with all dependency information.

let _metadata = MetadataCommand::new().exec().unwrap();

If you have a program that takes --manifest-path as an argument, you can forward that to MetadataCommand:

let mut args = std::env::args().skip_while(|val| !val.starts_with("--manifest-path"));
let mut cmd = MetadataCommand::new();
let manifest_path = match args.next() {
    Some(ref p) if p == "--manifest-path" => {
        cmd.manifest_path(args.next().unwrap());
    }
    Some(p) => {
        cmd.manifest_path(p.trim_start_matches("--manifest-path="));
    }
    None => {}
};

let _metadata = cmd.exec().unwrap();

Pass features flags, e.g. --all-features.

let _metadata = MetadataCommand::new()
    .manifest_path("./wesl.toml")
    .exec()
    .unwrap();

Re-exports§

pub use camino;
pub use semver;

Structs§

Dependency
A dependency of the main crate
DependencyBuilderbuilder
Builder for Dependency.
Metadata
Starting point for metadata returned by wesl metadata
MetadataBuilder
Builder for Metadata.
MetadataCommand
A builder for configuring wesl metadata invocation.
Node
A node in a dependencies graph
NodeBuilder
Builder for Node.
NodeDependency
A dependency in a node
NodeDependencyBuilder
Builder for NodeDependency.
Package
One or more crates described by a single wesl.toml
PackageBuilder
Builder for Package.
PackageId
An “opaque” identifier for a package.
Resolve
A dependency graph
ResolveBuilder
Builder for Resolve.
Target
A single target (lib, bin, example, …) provided by a crate
TargetBuilder
Builder for Target.

Enums§

Edition
The WESL edition
Error
Error returned when executing/parsing wesl metadata fails.
MetadataBuilderError
Error type for MetadataBuilder
NodeBuilderError
Error type for NodeBuilder
NodeDependencyBuilderError
Error type for NodeDependencyBuilder
PackageBuilderError
Error type for PackageBuilder
PackageManager
The package manager used for getting dependencies of the WESL package.
ResolveBuilderError
Error type for ResolveBuilder
TargetBuilderError
Error type for TargetBuilder

Type Aliases§

Result
Custom result type for wesl_metadata::Error