Struct imdb_index::Query [−][src]
pub struct Query { /* fields omitted */ }
A query that can be used to search IMDb media records.
A query typically consists of a fuzzy name query along with zero or more filters. If a query lacks a fuzzy name query, then this will generally result in an exhaustive search of all IMDb media records, which can be slow.
Filters are matched conjunctively. That is, a search result must satisfy every filter on a query to match.
Empty queries always return no results.
The Serialize
and Deserialize
implementations for this type use the
free-form query syntax.
Methods
impl Query
[src]
impl Query
pub fn new() -> Query
[src]
pub fn new() -> Query
Create a new empty query.
pub fn is_empty(&self) -> bool
[src]
pub fn is_empty(&self) -> bool
Return true if and only if this query is empty.
Searching with an empty query always yields no results.
pub fn name(self, name: &str) -> Query
[src]
pub fn name(self, name: &str) -> Query
Set the name to query by.
The name given here is normalized and broken down into components automatically to facilitate fuzzy searching.
Note that if no name is provided in a query, then it is possible that searching with the query will require exhaustively looking at every record in IMDb. This will be slower.
pub fn name_scorer(self, scorer: Option<NameScorer>) -> Query
[src]
pub fn name_scorer(self, scorer: Option<NameScorer>) -> Query
Set the scorer to use for name searches.
The name scorer is used to rank results from searching the IMDb name index. If no name query is given, then this scorer is not used.
If None
is provided here, then the name index will not be used. This
will likely cause an exhaustive search of all IMDb records, which can
be slow. The use case for providing a name query without a name scorer
is if you, for example, wanted to rank all of the records in IMDb
by the Levenshtein distance between your query and every other record
in IMDb. Normally, when the name index is used, only the (small number)
of results returned by searching the name are ranked. Typically, these
sorts of queries are useful for evaluation purposes, but not much else.
pub fn similarity(self, sim: Similarity) -> Query
[src]
pub fn similarity(self, sim: Similarity) -> Query
Set the similarity function.
The similarity function can be selected from a predefined set of
choices defined by the
Similarity
type.
When a similarity function is used, then any results from searching the name index are re-ranked according to their similarity with the query.
By default, no similarity function is used.
pub fn size(self, size: usize) -> Query
[src]
pub fn size(self, size: usize) -> Query
Set the maximum number of results to be returned by a search.
Note that setting this number too high (e.g., > 10,000
) can impact
performance. This is a normal restriction found in most information
retrieval systems. That is, deep paging through result sets is
expensive.
pub fn kind(self, kind: TitleKind) -> Query
[src]
pub fn kind(self, kind: TitleKind) -> Query
Add a title kind to filter by.
Multiple title kinds can be added to query, and search results must match at least one of them.
Note that it is not possible to remove title kinds from an existing query. Instead, build a new query from scratch.
pub fn year_ge(self, year: u32) -> Query
[src]
pub fn year_ge(self, year: u32) -> Query
Set the lower inclusive bound on a title's year.
This applies to either the title's start or end years.
pub fn year_le(self, year: u32) -> Query
[src]
pub fn year_le(self, year: u32) -> Query
Set the upper inclusive bound on a title's year.
This applies to either the title's start or end years.
pub fn votes_ge(self, votes: u32) -> Query
[src]
pub fn votes_ge(self, votes: u32) -> Query
Set the lower inclusive bound on a title's number of votes.
pub fn votes_le(self, votes: u32) -> Query
[src]
pub fn votes_le(self, votes: u32) -> Query
Set the upper inclusive bound on a title's number of votes.
pub fn season_ge(self, season: u32) -> Query
[src]
pub fn season_ge(self, season: u32) -> Query
Set the lower inclusive bound on a title's season.
This automatically limits all results to episodes.
pub fn season_le(self, season: u32) -> Query
[src]
pub fn season_le(self, season: u32) -> Query
Set the upper inclusive bound on a title's season.
This automatically limits all results to episodes.
pub fn episode_ge(self, episode: u32) -> Query
[src]
pub fn episode_ge(self, episode: u32) -> Query
Set the lower inclusive bound on a title's episode number.
This automatically limits all results to episodes.
pub fn episode_le(self, episode: u32) -> Query
[src]
pub fn episode_le(self, episode: u32) -> Query
Set the upper inclusive bound on a title's episode number.
This automatically limits all results to episodes.
pub fn tvshow_id(self, tvshow_id: &str) -> Query
[src]
pub fn tvshow_id(self, tvshow_id: &str) -> Query
Restrict results to episodes belonging to the TV show given by its IMDb ID.
This automatically limits all results to episodes.
Trait Implementations
impl Clone for Query
[src]
impl Clone for Query
fn clone(&self) -> Query
[src]
fn clone(&self) -> Query
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
impl Debug for Query
[src]
impl Debug for Query
fn fmt(&self, f: &mut Formatter) -> Result
[src]
fn fmt(&self, f: &mut Formatter) -> Result
Formats the value using the given formatter. Read more
impl Eq for Query
[src]
impl Eq for Query
impl Hash for Query
[src]
impl Hash for Query
fn hash<__H: Hasher>(&self, state: &mut __H)
[src]
fn hash<__H: Hasher>(&self, state: &mut __H)
Feeds this value into the given [Hasher
]. Read more
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
Feeds a slice of this type into the given [Hasher
]. Read more
impl PartialEq for Query
[src]
impl PartialEq for Query
fn eq(&self, other: &Query) -> bool
[src]
fn eq(&self, other: &Query) -> bool
This method tests for self
and other
values to be equal, and is used by ==
. Read more
fn ne(&self, other: &Query) -> bool
[src]
fn ne(&self, other: &Query) -> bool
This method tests for !=
.
impl Default for Query
[src]
impl Default for Query
impl Serialize for Query
[src]
impl Serialize for Query
fn serialize<S>(&self, s: S) -> Result<S::Ok, S::Error> where
S: Serializer,
[src]
fn serialize<S>(&self, s: S) -> Result<S::Ok, S::Error> where
S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl<'a> Deserialize<'a> for Query
[src]
impl<'a> Deserialize<'a> for Query
fn deserialize<D>(d: D) -> Result<Query, D::Error> where
D: Deserializer<'a>,
[src]
fn deserialize<D>(d: D) -> Result<Query, D::Error> where
D: Deserializer<'a>,
Deserialize this value from the given Serde deserializer. Read more
impl FromStr for Query
[src]
impl FromStr for Query
type Err = Error
The associated error which can be returned from parsing.
fn from_str(qstr: &str) -> Result<Query>
[src]
fn from_str(qstr: &str) -> Result<Query>
Parses a string s
to return a value of this type. Read more
impl Display for Query
[src]
impl Display for Query