Struct summavy::query::Explanation
source · pub struct Explanation { /* private fields */ }Expand description
Object describing the score of a given document. It is organized in trees.
.to_pretty_json() can be useful to print out a human readable
representation of this tree when debugging a given score.
Implementations§
source§impl Explanation
impl Explanation
sourcepub fn new<T: ToString>(description: T, value: Score) -> Explanation
pub fn new<T: ToString>(description: T, value: Score) -> Explanation
Creates a new explanation object.
sourcepub fn add_detail(&mut self, child_explanation: Explanation)
pub fn add_detail(&mut self, child_explanation: Explanation)
Add some detail, explaining some part of the current node formula.
Details are treated as child of the current node.
sourcepub fn add_context(&mut self, context: String)
pub fn add_context(&mut self, context: String)
Adds some extra context to the explanation.
sourcepub fn add_const<T: ToString>(&mut self, name: T, value: Score)
pub fn add_const<T: ToString>(&mut self, name: T, value: Score)
Shortcut for self.details.push(Explanation::new(name, value));
sourcepub fn to_pretty_json(&self) -> String
pub fn to_pretty_json(&self) -> String
Returns an indented json representation of the explanation tree for debug usage.
Trait Implementations§
source§impl Clone for Explanation
impl Clone for Explanation
source§fn clone(&self) -> Explanation
fn clone(&self) -> Explanation
Returns a copy of the value. Read more
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moresource§impl Debug for Explanation
impl Debug for Explanation
Auto Trait Implementations§
impl RefUnwindSafe for Explanation
impl Send for Explanation
impl Sync for Explanation
impl Unpin for Explanation
impl UnwindSafe for Explanation
Blanket Implementations§
source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
source§fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait. Read moresource§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait. Read moresource§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s. Read moresource§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s. Read more