This module provides a single place for all aspects, rules, and macros that are meant to have stardoc generated documentation.
Rules
rust_clippy
Executes the clippy checker on a specific target.
Similar to rust_clippy_aspect
, but allows specifying a list of dependencies within the build system.
For example, given the following example targets:
load("@rules_rust//rust:defs.bzl", "rust_library", "rust_test")
rust_library(
name = "hello_lib",
srcs = ["src/lib.rs"],
)
rust_test(
name = "greeting_test",
srcs = ["tests/greeting.rs"],
deps = [":hello_lib"],
)
Rust clippy can be set as a build target with the following:
load("@rules_rust//rust:defs.bzl", "rust_clippy")
rust_clippy(
name = "hello_library_clippy",
testonly = True,
deps = [
":hello_lib",
":greeting_test",
],
)
name
A unique name for this target.
deps
Rust targets to run clippy on.
Aspects
rust_clippy_aspect
Executes the clippy checker on specified targets.
This aspect applies to existing rust_library, rust_test, and rust_binary rules.
As an example, if the following is defined in examples/hello_lib/BUILD.bazel
:
load("@rules_rust//rust:defs.bzl", "rust_library", "rust_test")
rust_library(
name = "hello_lib",
srcs = ["src/lib.rs"],
)
rust_test(
name = "greeting_test",
srcs = ["tests/greeting.rs"],
deps = [":hello_lib"],
)
Then the targets can be analyzed with clippy using the following command:
$ bazel build --aspects=@rules_rust//rust:defs.bzl%rust_clippy_aspect --output_groups=clippy_checks //hello_lib:all
Propagates along attributes named:
name
A unique name for this target.