Deduplicate the CrateInfo provider (#720)
diff --git a/rust/rust_common.bzl b/rust/rust_common.bzl
index d23e513..ad8cbdf 100644
--- a/rust/rust_common.bzl
+++ b/rust/rust_common.bzl
@@ -14,19 +14,6 @@
"""Module with Rust definitions required to write custom Rust rules."""
-CrateInfo = provider(
- doc = "A provider containing general Crate information.",
- fields = {
- "aliases": "Dict[Label, String]: Renamed and aliased crates",
- "deps": "List[Provider]: This crate's (rust or cc) dependencies' providers.",
- "edition": "str: The edition of this crate.",
- "is_test": "bool: If the crate is being compiled in a test context",
- "name": "str: The name of this crate.",
- "output": "File: The output File that will be produced, depends on crate type.",
- "proc_macro_deps": "List[CrateInfo]: This crate's rust proc_macro dependencies' providers.",
- "root": "File: The source File entrypoint to this crate, eg. lib.rs",
- "rustc_env": "Dict[String, String]: Additional `\"key\": \"value\"` environment variables to set for rustc.",
- "srcs": "List[File]: All source Files that are part of the crate.",
- "type": "str: The type of this crate. eg. lib or bin",
- },
-)
+load("//rust/private:providers.bzl", _CrateInfo = "CrateInfo")
+
+CrateInfo = _CrateInfo