1#![warn(missing_docs)]
2pub mod ast;
42pub mod cascade;
43pub mod check;
44pub mod context;
45pub mod detail_store;
46pub mod discovery;
47pub mod import_map_builder;
48pub mod literal;
49pub mod pattern;
50pub mod query;
51pub mod summary;
52pub mod symbol;
53#[cfg(feature = "testing")]
54pub mod testing;
55pub mod uuid_persistence;
56
57pub use symbol::{
59 CrateName,
61 FileId,
63 FileRegistry,
64 FileSpan,
65 InvalidFileId,
66 InvalidSymbolId,
68 ParseError,
69 ReExportInfo,
70 RegistrationError,
71 RegistryUpdate,
73 RegistryUpdateBatch,
74 RenameError,
75 Segment,
76 SymbolId,
77 SymbolKind,
78 SymbolPath,
79 SymbolPathBuilder,
80 SymbolRef,
81 SymbolRegistry,
82 Uuid,
84 Visibility,
85 WorkspaceFilePath,
86};
87
88pub use pattern::{CaseOptions, Pattern};
90
91pub use query::{
93 AccessKind,
95 ActiveBorrowV2,
97 BorrowAnalysis,
98 BorrowConflict,
99 BorrowKind,
100 BorrowStateV2,
101 BorrowTrackerV2,
102 ChainDirection,
103 ChainNode,
105 ChainResult,
106 CodeEdgeV2,
107 CodeGraphV2,
108 CommentDirective,
110 ConstraintData,
112 ConstraintKind,
113 CriticalSectionV2,
114 DataFlowBuilderWorkspace,
116 DataFlowGraphV2,
117 DataFlowStats,
118 DefinitionData,
120 DeriveIndex,
121 DeriveIndexStats,
122 EdgeData,
123 EdgeId,
124 FieldAccessV2,
125 FlowChain,
126 FlowData,
127 FlowEdge,
128 FlowEdgeData,
129 FlowId,
130 FlowKind,
131 FlowStep,
132 GenericArgData,
133 GraphBuilderV2,
134 GroupData,
135 IntentData,
136 IntentKind,
137 LockAcquisitionV2,
138 LockGranularityAnalyzerV2,
139 LockStatsV2,
140 LockSuggestion,
141 LockTrackerV2,
142 LockType,
143 LookupTable,
144 MatchExprDataV2,
145 MatchExprId,
146 MoveError,
147 NodeKind,
148 QueryBuilder,
149 RefKind,
150 ReferenceIntegrityChecker,
152 ReferenceIntegrityIssue,
153 ReferenceIntegrityResult,
154 SpecAliasData,
155 SpecAliasInfo,
157 SpecFlowBuilderV2,
158 SpecFlowGraphV2,
159 SpecLookupTable,
160 SpecNodeId,
161 SpecNodeKind,
162 SpecSource,
163 StdImplCache,
164 TraitBoundData,
165 TypeAliasEntry,
166 TypeAliasRegistry,
167 TypeAliasRegistryBuilder,
168 TypeDefKind,
169 TypeFlowBuilderV2,
170 TypeFlowGraphV2,
171 TypeImpactChecker,
173 TypeImpactIssue,
174 TypeImpactResult,
175 TypeImpactV2,
176 TypeNodeId,
177 UnusedSymbol,
179 UnusedSymbolChecker,
180 UnusedSymbolResult,
181 UsageContext,
182 UsageData,
183 VarData,
184 VarId,
186 VarKind,
187 VarNode,
188 VarSymbolMapping,
189};
190
191#[cfg(feature = "workspace")]
193pub use ryo_metadata::{ResolvedCrateName, ResolvedFile, ResolvedModulePath, WorkspaceResolver};
194
195pub use discovery::{
197 DiscoveredSymbol, DiscoveryEngine, DiscoveryQuery, DiscoveryResult, RelationGraph,
198 RelationKind, SortOrder, TypeFilter,
199};
200
201pub use context::{AnalysisConfig, AnalysisContext, ContextError, ExecutionContext, ImHashMap};
203
204pub use detail_store::{
206 DetailStore, EnumDetail, FieldInfo, FunctionDetail, GenericInfo, ImplDetail, ParamInfo,
207 StructDetail, StructKind, TraitDetail, VariantInfo,
208};
209
210pub use summary::{SummaryOptions, ToSummary};
212
213pub use check::{
215 cascade_add_derive, CascadeMutation, CascadeResult, CascadeStatus, CascadeStrategy, CheckError,
216 CheckResult, CheckWarning, GraphChecker, LightCheck,
217};
218
219pub use cascade::{
221 CascadeAnalyzer, CascadeSpec, CascadeStrategy as NewCascadeStrategy, ImpactLevel, ImpactSet,
222 Visibility as CascadeVisibility,
223};
224
225pub use literal::{LiteralCollector, LiteralInfo, LiteralKind};
227
228#[cfg(feature = "literal-search")]
229pub use literal::{LiteralIndex, LiteralMatch, LiteralQuery, LiteralSearchError};
230
231pub use ast::ASTRegistry;
233
234pub use uuid_persistence::{NoOpUuidPersistence, UuidPersistence, UuidPersistenceError};