Skip to main content

swiftide_core/
lib.rs

1// show feature flags in the generated documentation
2// https://doc.rust-lang.org/rustdoc/unstable-features.html#extensions-to-the-doc-attribute
3#![cfg_attr(docsrs, feature(doc_cfg))]
4#![cfg_attr(docsrs, doc(auto_cfg))]
5#![doc(html_logo_url = "https://github.com/bosun-ai/swiftide/raw/master/images/logo.png")]
6#![cfg_attr(coverage_nightly, feature(coverage_attribute))]
7
8pub mod agent_traits;
9pub mod chat_completion;
10pub mod command_output;
11pub mod indexing_decorators;
12mod indexing_defaults;
13mod indexing_stream;
14pub mod indexing_traits;
15mod node;
16mod query;
17mod query_stream;
18pub mod query_traits;
19mod search_strategies;
20mod stream_backoff;
21pub mod token_estimation;
22pub mod tool_executor;
23pub mod type_aliases;
24
25pub mod document;
26pub mod prompt;
27pub use type_aliases::*;
28
29mod metadata;
30mod query_evaluation;
31
32/// All traits are available from the root
33pub use crate::agent_traits::{AgentContext, MessageHistory, ToolFeedback};
34pub use crate::chat_completion::traits::*;
35pub use crate::command_output::*;
36pub use crate::indexing_traits::*;
37pub use crate::query_traits::*;
38pub use crate::token_estimation::*;
39pub use crate::tool_executor::*;
40
41// Decorators are available from the root
42pub use crate::indexing_decorators::*;
43
44pub mod indexing {
45    pub use crate::indexing_decorators::*;
46    pub use crate::indexing_defaults::*;
47    pub use crate::indexing_stream::IndexingStream;
48    pub use crate::indexing_traits::*;
49    pub use crate::metadata::*;
50    pub use crate::node::*;
51}
52
53pub mod querying {
54    pub use crate::document::*;
55    pub use crate::query::*;
56    pub use crate::query_evaluation::*;
57    pub use crate::query_stream::*;
58    pub use crate::query_traits::*;
59    pub mod search_strategies {
60        pub use crate::search_strategies::*;
61    }
62}
63
64/// Re-export of commonly used dependencies.
65pub mod prelude;
66
67#[cfg(feature = "test-utils")]
68pub mod test_utils;
69
70pub mod util;
71
72#[cfg(feature = "metrics")]
73pub mod metrics;
74
75/// Pipeline statistics collection for monitoring and observability
76pub mod statistics;