Skip to main content

SearchResponse

Struct SearchResponse 

Source
#[non_exhaustive]
pub struct SearchResponse {
Show 14 fields pub results: Vec<SearchResult>, pub facets: Vec<Facet>, pub total_size: i32, pub corrected_query: String, pub attribution_token: String, pub next_page_token: String, pub query_expansion_info: Option<QueryExpansionInfo>, pub redirect_uri: String, pub applied_controls: Vec<String>, pub pin_control_metadata: Option<PinControlMetadata>, pub invalid_condition_boost_specs: Vec<ConditionBoostSpec>, pub experiment_info: Vec<ExperimentInfo>, pub conversational_search_result: Option<ConversationalSearchResult>, pub tile_navigation_result: Option<TileNavigationResult>, /* private fields */
}
Expand description

Response message for SearchService.Search method.

Fields (Non-exhaustive)§

This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.
§results: Vec<SearchResult>

A list of matched items. The order represents the ranking.

§facets: Vec<Facet>

Results of facets requested by user.

§total_size: i32

The estimated total count of matched items irrespective of pagination. The count of results returned by pagination may be less than the total_size that matches.

§corrected_query: String

Contains the spell corrected query, if found. If the spell correction type is AUTOMATIC, then the search results are based on corrected_query. Otherwise the original query is used for search.

§attribution_token: String

A unique search token. This should be included in the UserEvent logs resulting from this search, which enables accurate attribution of search model performance.

§next_page_token: String

A token that can be sent as SearchRequest.page_token to retrieve the next page. If this field is omitted, there are no subsequent pages.

§query_expansion_info: Option<QueryExpansionInfo>

Query expansion information for the returned results.

§redirect_uri: String

The URI of a customer-defined redirect page. If redirect action is triggered, no search is performed, and only redirect_uri and attribution_token are set in the response.

§applied_controls: Vec<String>

The fully qualified resource name of applied controls.

§pin_control_metadata: Option<PinControlMetadata>

Metadata for pin controls which were applicable to the request. This contains two map fields, one for all matched pins and one for pins which were matched but not applied.

The two maps are keyed by pin position, and the values are the product ids which were matched to that pin.

§invalid_condition_boost_specs: Vec<ConditionBoostSpec>

The invalid SearchRequest.BoostSpec.condition_boost_specs that are not applied during serving.

§experiment_info: Vec<ExperimentInfo>

Metadata related to A/B testing experiment associated with this response. Only exists when an experiment is triggered.

§conversational_search_result: Option<ConversationalSearchResult>

This field specifies all related information that is needed on client side for UI rendering of conversational retail search.

§tile_navigation_result: Option<TileNavigationResult>

This field specifies all related information for tile navigation that will be used in client side.

Implementations§

Source§

impl SearchResponse

Source

pub fn new() -> Self

Source

pub fn set_results<T, V>(self, v: T) -> Self
where T: IntoIterator<Item = V>, V: Into<SearchResult>,

Sets the value of results.

§Example
use google_cloud_retail_v2::model::search_response::SearchResult;
let x = SearchResponse::new()
    .set_results([
        SearchResult::default()/* use setters */,
        SearchResult::default()/* use (different) setters */,
    ]);
Source

pub fn set_facets<T, V>(self, v: T) -> Self
where T: IntoIterator<Item = V>, V: Into<Facet>,

Sets the value of facets.

§Example
use google_cloud_retail_v2::model::search_response::Facet;
let x = SearchResponse::new()
    .set_facets([
        Facet::default()/* use setters */,
        Facet::default()/* use (different) setters */,
    ]);
Source

pub fn set_total_size<T: Into<i32>>(self, v: T) -> Self

Sets the value of total_size.

§Example
let x = SearchResponse::new().set_total_size(42);
Source

pub fn set_corrected_query<T: Into<String>>(self, v: T) -> Self

Sets the value of corrected_query.

§Example
let x = SearchResponse::new().set_corrected_query("example");
Source

pub fn set_attribution_token<T: Into<String>>(self, v: T) -> Self

Sets the value of attribution_token.

§Example
let x = SearchResponse::new().set_attribution_token("example");
Source

pub fn set_next_page_token<T: Into<String>>(self, v: T) -> Self

Sets the value of next_page_token.

§Example
let x = SearchResponse::new().set_next_page_token("example");
Source

pub fn set_query_expansion_info<T>(self, v: T) -> Self

Sets the value of query_expansion_info.

§Example
use google_cloud_retail_v2::model::search_response::QueryExpansionInfo;
let x = SearchResponse::new().set_query_expansion_info(QueryExpansionInfo::default()/* use setters */);
Source

pub fn set_or_clear_query_expansion_info<T>(self, v: Option<T>) -> Self

Sets or clears the value of query_expansion_info.

§Example
use google_cloud_retail_v2::model::search_response::QueryExpansionInfo;
let x = SearchResponse::new().set_or_clear_query_expansion_info(Some(QueryExpansionInfo::default()/* use setters */));
let x = SearchResponse::new().set_or_clear_query_expansion_info(None::<QueryExpansionInfo>);
Source

pub fn set_redirect_uri<T: Into<String>>(self, v: T) -> Self

Sets the value of redirect_uri.

§Example
let x = SearchResponse::new().set_redirect_uri("example");
Source

pub fn set_applied_controls<T, V>(self, v: T) -> Self
where T: IntoIterator<Item = V>, V: Into<String>,

Sets the value of applied_controls.

§Example
let x = SearchResponse::new().set_applied_controls(["a", "b", "c"]);
Source

pub fn set_pin_control_metadata<T>(self, v: T) -> Self

Sets the value of pin_control_metadata.

§Example
use google_cloud_retail_v2::model::PinControlMetadata;
let x = SearchResponse::new().set_pin_control_metadata(PinControlMetadata::default()/* use setters */);
Source

pub fn set_or_clear_pin_control_metadata<T>(self, v: Option<T>) -> Self

Sets or clears the value of pin_control_metadata.

§Example
use google_cloud_retail_v2::model::PinControlMetadata;
let x = SearchResponse::new().set_or_clear_pin_control_metadata(Some(PinControlMetadata::default()/* use setters */));
let x = SearchResponse::new().set_or_clear_pin_control_metadata(None::<PinControlMetadata>);
Source

pub fn set_invalid_condition_boost_specs<T, V>(self, v: T) -> Self
where T: IntoIterator<Item = V>, V: Into<ConditionBoostSpec>,

Sets the value of invalid_condition_boost_specs.

§Example
use google_cloud_retail_v2::model::search_request::boost_spec::ConditionBoostSpec;
let x = SearchResponse::new()
    .set_invalid_condition_boost_specs([
        ConditionBoostSpec::default()/* use setters */,
        ConditionBoostSpec::default()/* use (different) setters */,
    ]);
Source

pub fn set_experiment_info<T, V>(self, v: T) -> Self
where T: IntoIterator<Item = V>, V: Into<ExperimentInfo>,

Sets the value of experiment_info.

§Example
use google_cloud_retail_v2::model::ExperimentInfo;
let x = SearchResponse::new()
    .set_experiment_info([
        ExperimentInfo::default()/* use setters */,
        ExperimentInfo::default()/* use (different) setters */,
    ]);
Source

pub fn set_conversational_search_result<T>(self, v: T) -> Self

Sets the value of conversational_search_result.

§Example
use google_cloud_retail_v2::model::search_response::ConversationalSearchResult;
let x = SearchResponse::new().set_conversational_search_result(ConversationalSearchResult::default()/* use setters */);
Source

pub fn set_or_clear_conversational_search_result<T>(self, v: Option<T>) -> Self

Sets or clears the value of conversational_search_result.

§Example
use google_cloud_retail_v2::model::search_response::ConversationalSearchResult;
let x = SearchResponse::new().set_or_clear_conversational_search_result(Some(ConversationalSearchResult::default()/* use setters */));
let x = SearchResponse::new().set_or_clear_conversational_search_result(None::<ConversationalSearchResult>);
Source

pub fn set_tile_navigation_result<T>(self, v: T) -> Self

Sets the value of tile_navigation_result.

§Example
use google_cloud_retail_v2::model::search_response::TileNavigationResult;
let x = SearchResponse::new().set_tile_navigation_result(TileNavigationResult::default()/* use setters */);
Source

pub fn set_or_clear_tile_navigation_result<T>(self, v: Option<T>) -> Self

Sets or clears the value of tile_navigation_result.

§Example
use google_cloud_retail_v2::model::search_response::TileNavigationResult;
let x = SearchResponse::new().set_or_clear_tile_navigation_result(Some(TileNavigationResult::default()/* use setters */));
let x = SearchResponse::new().set_or_clear_tile_navigation_result(None::<TileNavigationResult>);

Trait Implementations§

Source§

impl Clone for SearchResponse

Source§

fn clone(&self) -> SearchResponse

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for SearchResponse

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for SearchResponse

Source§

fn default() -> SearchResponse

Returns the “default value” for a type. Read more
Source§

impl Message for SearchResponse

Source§

fn typename() -> &'static str

The typename of this message.
Source§

impl PartialEq for SearchResponse

Source§

fn eq(&self, other: &SearchResponse) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl StructuralPartialEq for SearchResponse

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,