fob_graph/memory/
types.rs1use super::super::{ImportSpecifier, ModuleId, SourceSpan};
4
5#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
7pub struct ClassMemberInfo {
8 pub module_id: ModuleId,
9 pub symbol: super::super::symbol::Symbol,
10 pub metadata: super::super::symbol::ClassMemberMetadata,
11}
12
13#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
15pub struct EnumMemberInfo {
16 pub module_id: ModuleId,
17 pub symbol: super::super::symbol::Symbol,
18 pub value: Option<super::super::symbol::EnumMemberValue>,
19}
20
21#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
23pub struct SideEffectImport {
24 pub importer: ModuleId,
25 pub source: String,
26 pub resolved_to: Option<ModuleId>,
27 pub span: SourceSpan,
28}
29
30#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
32pub struct NamespaceImportInfo {
33 pub importer: ModuleId,
34 pub namespace_name: String,
35 pub source: String,
36 pub resolved_to: Option<ModuleId>,
37}
38
39#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
41pub struct TypeOnlyImport {
42 pub importer: ModuleId,
43 pub source: String,
44 pub specifiers: Vec<ImportSpecifier>,
45 pub span: SourceSpan,
46}