Sweep every first-party crate source (1956 .rs files) to the project comment guidelines: delete redundant restatements, decorative banners, change narration, and end-of-line comments; keep and tighten the crucial ones (invariants, bug rationale, SAFETY blocks, ported-source attribution). No functional code changed. Every edit is proven comment-only against the prior tree by a comment-stripping lexer (string/char/raw-string aware) plus a separate doctest-fence check. Where removing a comment made rustfmt or clippy want to re-lay-out adjacent code, the minimal triggering comment is restored so code tokens stay byte-identical. Gates green: cargo fmt --all --check (0 diffs), cargo check and cargo clippy --workspace --all-targets (0 warnings). Adds scripts/check_codegen_comment_guidelines.py — the enforcement gate for these guidelines (flags banners, end-of-line comments, change narration, and commented-out code).
23 lines
569 B
Rust
23 lines
569 B
Rust
//! Edge types for the ScopeGraph.
|
|
|
|
use serde::{Deserialize, Serialize};
|
|
|
|
/// Edge weight in the ScopeGraph. Every variant is directed source-to-target,
|
|
/// in the order its name reads.
|
|
#[derive(Serialize, Deserialize, PartialEq, Eq, Copy, Clone, Debug)]
|
|
pub enum EdgeKind {
|
|
/// Nested scope to its parent scope.
|
|
ScopeToScope,
|
|
|
|
/// Definition to the scope that owns it, which for a hoisted def is the
|
|
/// parent of the scope it was written in.
|
|
DefToScope,
|
|
|
|
/// Import to its defining scope.
|
|
ImportToScope,
|
|
|
|
RefToDef,
|
|
|
|
RefToImport,
|
|
}
|