Files
tubestation/third_party/rust/suggest/src/lib.rs
Drew Willcoxon 3d0a207aee Bug 1968156 - Vendor application-services 8986582 for suggest geonames and weather changes. r=daisuke,supply-chain-reviewers
This vendors this revision:
8986582d37

It also makes some desktop fixes due to some breaking changes in Suggest, which
@daisuke previously reviewed. It's a large vendor due to vendoring some new
crates plus some app-services revisions that made changes to logging and error
reporting and touched lots of files.

Differential Revision: https://phabricator.services.mozilla.com/D250877
2025-05-23 20:13:00 +00:00

48 lines
1.3 KiB
Rust

/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
*/
#[cfg(feature = "benchmark_api")]
pub mod benchmarks;
mod config;
mod db;
mod error;
mod fakespot;
mod geoname;
mod metrics;
pub mod pocket;
mod provider;
mod query;
mod rs;
mod schema;
mod store;
mod suggestion;
#[cfg(test)]
mod testing;
pub mod util;
mod weather;
mod yelp;
pub use config::{SuggestGlobalConfig, SuggestProviderConfig};
pub use error::{Error, SuggestApiError};
pub use geoname::{Geoname, GeonameMatch};
pub use metrics::{LabeledTimingSample, SuggestIngestionMetrics};
pub use provider::{AmpMatchingStrategy, SuggestionProvider, SuggestionProviderConstraints};
pub use query::{QueryWithMetricsResult, SuggestionQuery};
pub use store::{InterruptKind, SuggestIngestionConstraints, SuggestStore, SuggestStoreBuilder};
pub use suggestion::{raw_suggestion_url_matches, Suggestion};
pub(crate) type Result<T> = std::result::Result<T, Error>;
pub type SuggestApiResult<T> = std::result::Result<T, SuggestApiError>;
uniffi::setup_scaffolding!();
use serde_json::Value as JsonValue;
uniffi::custom_type!(JsonValue, String, {
remote,
try_lift: |val| serde_json::from_str(val.as_str()).map_err(Into::into),
lower: |obj| obj.to_string(),
});