#![warn(missing_docs)]
pub mod ast;
pub mod cascade;
pub mod check;
pub mod context;
pub mod detail_store;
pub mod discovery;
pub mod import_map_builder;
pub mod literal;
pub mod pattern;
pub mod query;
pub mod summary;
pub mod symbol;
#[cfg(feature = "testing")]
pub mod testing;
pub mod uuid_persistence;
pub use symbol::{
CrateName,
FileId,
FileRegistry,
FileSpan,
InvalidFileId,
InvalidSymbolId,
ParseError,
ReExportInfo,
RegistrationError,
RegistryUpdate,
RegistryUpdateBatch,
RenameError,
Segment,
SymbolId,
SymbolKind,
SymbolPath,
SymbolPathBuilder,
SymbolRef,
SymbolRegistry,
Uuid,
Visibility,
WorkspaceFilePath,
};
pub use pattern::{CaseOptions, Pattern};
pub use query::{
AccessKind,
ActiveBorrowV2,
BorrowAnalysis,
BorrowConflict,
BorrowKind,
BorrowStateV2,
BorrowTrackerV2,
ChainDirection,
ChainNode,
ChainResult,
CodeEdgeV2,
CodeGraphV2,
CommentDirective,
ConstraintData,
ConstraintKind,
CriticalSectionV2,
DataFlowBuilderWorkspace,
DataFlowGraphV2,
DataFlowStats,
DefinitionData,
DeriveIndex,
DeriveIndexStats,
EdgeData,
EdgeId,
FieldAccessV2,
FlowChain,
FlowData,
FlowEdge,
FlowEdgeData,
FlowId,
FlowKind,
FlowStep,
GenericArgData,
GraphBuilderV2,
GroupData,
IntentData,
IntentKind,
LockAcquisitionV2,
LockGranularityAnalyzerV2,
LockStatsV2,
LockSuggestion,
LockTrackerV2,
LockType,
LookupTable,
MatchExprDataV2,
MatchExprId,
MoveError,
NodeKind,
QueryBuilder,
RefKind,
ReferenceIntegrityChecker,
ReferenceIntegrityIssue,
ReferenceIntegrityResult,
SpecAliasData,
SpecAliasInfo,
SpecFlowBuilderV2,
SpecFlowGraphV2,
SpecLookupTable,
SpecNodeId,
SpecNodeKind,
SpecSource,
StdImplCache,
TraitBoundData,
TypeAliasEntry,
TypeAliasRegistry,
TypeAliasRegistryBuilder,
TypeDefKind,
TypeFlowBuilderV2,
TypeFlowGraphV2,
TypeImpactChecker,
TypeImpactIssue,
TypeImpactResult,
TypeImpactV2,
TypeNodeId,
UnusedSymbol,
UnusedSymbolChecker,
UnusedSymbolResult,
UsageContext,
UsageData,
VarData,
VarId,
VarKind,
VarNode,
VarSymbolMapping,
};
#[cfg(feature = "workspace")]
pub use ryo_metadata::{ResolvedCrateName, ResolvedFile, ResolvedModulePath, WorkspaceResolver};
pub use discovery::{
DiscoveredSymbol, DiscoveryEngine, DiscoveryQuery, DiscoveryResult, RelationGraph,
RelationKind, SortOrder, TypeFilter,
};
pub use context::{AnalysisConfig, AnalysisContext, ContextError, ExecutionContext, ImHashMap};
pub use detail_store::{
DetailStore, EnumDetail, FieldInfo, FunctionDetail, GenericInfo, ImplDetail, ParamInfo,
StructDetail, StructKind, TraitDetail, VariantInfo,
};
pub use summary::{SummaryOptions, ToSummary};
pub use check::{
cascade_add_derive, CascadeMutation, CascadeResult, CascadeStatus, CascadeStrategy, CheckError,
CheckResult, CheckWarning, GraphChecker, LightCheck,
};
pub use cascade::{
CascadeAnalyzer, CascadeSpec, CascadeStrategy as NewCascadeStrategy, ImpactLevel, ImpactSet,
Visibility as CascadeVisibility,
};
pub use literal::{LiteralCollector, LiteralInfo, LiteralKind};
#[cfg(feature = "literal-search")]
pub use literal::{LiteralIndex, LiteralMatch, LiteralQuery, LiteralSearchError};
pub use ast::ASTRegistry;
pub use uuid_persistence::{NoOpUuidPersistence, UuidPersistence, UuidPersistenceError};