diff --git a/query-grammar/src/occur.rs b/query-grammar/src/occur.rs index 62cfb6b57..dfe70c534 100644 --- a/query-grammar/src/occur.rs +++ b/query-grammar/src/occur.rs @@ -1,3 +1,6 @@ +use std::fmt; +use std::fmt::Write; + /// Defines whether a term in a query must be present, /// should be present or must not be present. #[derive(Debug, Clone, Hash, Copy, Eq, PartialEq)] @@ -18,7 +21,7 @@ impl Occur { /// - `Should` => '?', /// - `Must` => '+' /// - `Not` => '-' - pub fn to_char(self) -> char { + fn to_char(self) -> char { match self { Occur::Should => '?', Occur::Must => '+', @@ -47,3 +50,9 @@ impl Occur { } } } + +impl fmt::Display for Occur { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + f.write_char(self.to_char()) + } +} diff --git a/query-grammar/src/user_input_ast.rs b/query-grammar/src/user_input_ast.rs index daf3c9ac2..30452008b 100644 --- a/query-grammar/src/user_input_ast.rs +++ b/query-grammar/src/user_input_ast.rs @@ -151,7 +151,7 @@ impl fmt::Debug for UserInputAST { Ok(()) } UserInputAST::Unary(ref occur, ref subquery) => { - write!(formatter, "{}({:?})", occur.to_char(), subquery) + write!(formatter, "{}({:?})", occur, subquery) } UserInputAST::Leaf(ref subquery) => write!(formatter, "{:?}", subquery), }