xref: /aosp_15_r20/external/bazelbuild-rules_rust/rust/defs.bzl (revision d4726bddaa87cc4778e7472feed243fa4b6c267f)
1# Copyright 2021 The Bazel Authors. All rights reserved.
2#
3# Licensed under the Apache License, Version 2.0 (the "License");
4# you may not use this file except in compliance with the License.
5# You may obtain a copy of the License at
6#
7#    http://www.apache.org/licenses/LICENSE-2.0
8#
9# Unless required by applicable law or agreed to in writing, software
10# distributed under the License is distributed on an "AS IS" BASIS,
11# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12# See the License for the specific language governing permissions and
13# limitations under the License.
14
15"""Public entry point to all Rust rules and supported APIs."""
16
17load(
18    "//rust:toolchain.bzl",
19    _rust_stdlib_filegroup = "rust_stdlib_filegroup",
20)
21load(
22    "//rust/private:clippy.bzl",
23    _capture_clippy_output = "capture_clippy_output",
24    _clippy_flag = "clippy_flag",
25    _clippy_flags = "clippy_flags",
26    _rust_clippy = "rust_clippy",
27    _rust_clippy_aspect = "rust_clippy_aspect",
28)
29load("//rust/private:common.bzl", _rust_common = "rust_common")
30load(
31    "//rust/private:rust.bzl",
32    _rust_binary = "rust_binary",
33    _rust_library = "rust_library",
34    _rust_library_group = "rust_library_group",
35    _rust_proc_macro = "rust_proc_macro",
36    _rust_shared_library = "rust_shared_library",
37    _rust_static_library = "rust_static_library",
38    _rust_test = "rust_test",
39    _rust_test_suite = "rust_test_suite",
40)
41load(
42    "//rust/private:rust_analyzer.bzl",
43    _rust_analyzer_aspect = "rust_analyzer_aspect",
44)
45load(
46    "//rust/private:rustc.bzl",
47    _error_format = "error_format",
48    _extra_exec_rustc_flag = "extra_exec_rustc_flag",
49    _extra_exec_rustc_flags = "extra_exec_rustc_flags",
50    _extra_rustc_flag = "extra_rustc_flag",
51    _extra_rustc_flags = "extra_rustc_flags",
52    _no_std = "no_std",
53    _per_crate_rustc_flag = "per_crate_rustc_flag",
54    _rustc_output_diagnostics = "rustc_output_diagnostics",
55)
56load(
57    "//rust/private:rustdoc.bzl",
58    _rust_doc = "rust_doc",
59)
60load(
61    "//rust/private:rustdoc_test.bzl",
62    _rust_doc_test = "rust_doc_test",
63)
64load(
65    "//rust/private:rustfmt.bzl",
66    _rustfmt_aspect = "rustfmt_aspect",
67    _rustfmt_test = "rustfmt_test",
68)
69load(
70    "//rust/private:unpretty.bzl",
71    _rust_unpretty = "rust_unpretty",
72    _rust_unpretty_aspect = "rust_unpretty_aspect",
73)
74
75rust_library = _rust_library
76# See @rules_rust//rust/private:rust.bzl for a complete description.
77
78rust_static_library = _rust_static_library
79# See @rules_rust//rust/private:rust.bzl for a complete description.
80
81rust_shared_library = _rust_shared_library
82# See @rules_rust//rust/private:rust.bzl for a complete description.
83
84rust_proc_macro = _rust_proc_macro
85# See @rules_rust//rust/private:rust.bzl for a complete description.
86
87rust_binary = _rust_binary
88# See @rules_rust//rust/private:rust.bzl for a complete description.
89
90rust_library_group = _rust_library_group
91# See @rules_rust//rust/private:rust.bzl for a complete description.
92
93rust_test = _rust_test
94# See @rules_rust//rust/private:rust.bzl for a complete description.
95
96rust_test_suite = _rust_test_suite
97# See @rules_rust//rust/private:rust.bzl for a complete description.
98
99rust_doc = _rust_doc
100# See @rules_rust//rust/private:rustdoc.bzl for a complete description.
101
102rust_doc_test = _rust_doc_test
103# See @rules_rust//rust/private:rustdoc_test.bzl for a complete description.
104
105clippy_flag = _clippy_flag
106clippy_flags = _clippy_flags
107# See @rules_rust//rust/private:clippy.bzl for a complete description.
108
109rust_clippy_aspect = _rust_clippy_aspect
110# See @rules_rust//rust/private:clippy.bzl for a complete description.
111
112rust_clippy = _rust_clippy
113# See @rules_rust//rust/private:clippy.bzl for a complete description.
114
115capture_clippy_output = _capture_clippy_output
116# See @rules_rust//rust/private:clippy.bzl for a complete description.
117
118rustc_output_diagnostics = _rustc_output_diagnostics
119# See @rules_rust//rust/private:rustc.bzl for a complete description.
120
121rust_unpretty_aspect = _rust_unpretty_aspect
122# See @rules_rust//rust/private:unpretty.bzl for a complete description.
123
124rust_unpretty = _rust_unpretty
125# See @rules_rust//rust/private:unpretty.bzl for a complete description.
126
127error_format = _error_format
128# See @rules_rust//rust/private:rustc.bzl for a complete description.
129
130extra_rustc_flag = _extra_rustc_flag
131# See @rules_rust//rust/private:rustc.bzl for a complete description.
132
133extra_rustc_flags = _extra_rustc_flags
134# See @rules_rust//rust/private:rustc.bzl for a complete description.
135
136extra_exec_rustc_flag = _extra_exec_rustc_flag
137# See @rules_rust//rust/private:rustc.bzl for a complete description.
138
139extra_exec_rustc_flags = _extra_exec_rustc_flags
140# See @rules_rust//rust/private:rustc.bzl for a complete description.
141
142per_crate_rustc_flag = _per_crate_rustc_flag
143# See @rules_rust//rust/private:rustc.bzl for a complete description.
144
145rust_common = _rust_common
146# See @rules_rust//rust/private:common.bzl for a complete description.
147
148rust_analyzer_aspect = _rust_analyzer_aspect
149# See @rules_rust//rust/private:rust_analyzer.bzl for a complete description.
150
151rustfmt_aspect = _rustfmt_aspect
152# See @rules_rust//rust/private:rustfmt.bzl for a complete description.
153
154rustfmt_test = _rustfmt_test
155# See @rules_rust//rust/private:rustfmt.bzl for a complete description.
156
157rust_stdlib_filegroup = _rust_stdlib_filegroup
158# See @rules_rust//rust:toolchain.bzl for a complete description.
159
160no_std = _no_std
161