dada_ir_ast/ast/
use_item.rs1use dada_util::SalsaSerialize;
2
3use crate::span::{Span, Spanned};
4
5use super::{AstPath, SpannedIdentifier};
6
7#[derive(SalsaSerialize)]
9#[salsa::tracked(debug)]
10pub struct AstUse<'db> {
11 pub span: Span<'db>,
12 pub crate_name: SpannedIdentifier<'db>,
13 #[return_ref]
14 pub path: AstPath<'db>,
15 pub as_id: Option<SpannedIdentifier<'db>>,
16}
17
18impl<'db> Spanned<'db> for AstUse<'db> {
19 fn span(&self, db: &'db dyn crate::Db) -> Span<'db> {
20 AstUse::span(*self, db)
21 }
22}