Skip to main content

Crate web_search

Crate web_search 

Source
Expand description

Web Search - Multi-provider web search aggregator

Deterministic result merging is always available. Network providers, the search engine, CLI, and HTTP service are enabled by the default server feature.

§Example

use std::collections::HashMap;
use web_search::{merger::merge_results, MergeOptions, SearchResult};

let results = HashMap::<String, Vec<SearchResult>>::new();
assert!(merge_results(&results, &MergeOptions::new()).is_empty());

Re-exports§

pub use error::SearchError;
pub use merger::MergeOptions;
pub use merger::MergeStrategy;
pub use providers::get_default_provider_ids;
pub use providers::get_provider_ids;
pub use providers::get_registry;
pub use providers::is_known_category;
pub use providers::RegistryEntry;
pub use providers::SearchOptions;
pub use providers::CATEGORIES;
pub use search::DetailedSearchResult;
pub use search::ProviderError;
pub use search::ProviderOutcome;
pub use search::ProviderOutcomeStatus;
pub use search::WebSearchConfig;
pub use search::WebSearchEngine;
pub use transport::ReqwestTransport;
pub use transport::SearchTransport;
pub use transport::TransportRequest;
pub use transport::TransportResponse;

Modules§

error
Error types for web search operations
merger
Search result merger with reranking support
providers
Search provider implementations
search
Web Search Engine - main entry point
transport
Caller-owned HTTP transport contract and exact response captures.

Structs§

SearchResult
A single search result.