1#![cfg(not(tarpaulin_include))]
2
3use std::fmt;
4
5use crate::{
6 token::{PartialToken, Token},
7 value::numeric_types::EvalexprNumericTypes,
8};
9
10impl<NumericTypes: EvalexprNumericTypes> fmt::Display for Token<NumericTypes> {
11 fn fmt(&self, f: &mut fmt::Formatter) -> Result<(), fmt::Error> {
12 use self::Token::*;
13 match self {
14 Plus => write!(f, "+"),
15 Minus => write!(f, "-"),
16 Star => write!(f, "*"),
17 Slash => write!(f, "/"),
18 Percent => write!(f, "%"),
19 Hat => write!(f, "^"),
20
21 Eq => write!(f, "=="),
23 Neq => write!(f, "!="),
24 Gt => write!(f, ">"),
25 Lt => write!(f, "<"),
26 Geq => write!(f, ">="),
27 Leq => write!(f, "<="),
28 And => write!(f, "&&"),
29 Or => write!(f, "||"),
30 Not => write!(f, "!"),
31
32 LBrace => write!(f, "("),
34 RBrace => write!(f, ")"),
35
36 Assign => write!(f, "="),
38 PlusAssign => write!(f, "+="),
39 MinusAssign => write!(f, "-="),
40 StarAssign => write!(f, "*="),
41 SlashAssign => write!(f, "/="),
42 PercentAssign => write!(f, "%="),
43 HatAssign => write!(f, "^="),
44 AndAssign => write!(f, "&&="),
45 OrAssign => write!(f, "||="),
46
47 Comma => write!(f, ","),
49 Semicolon => write!(f, ";"),
50
51 Identifier(identifier) => identifier.fmt(f),
53 Float(float) => float.fmt(f),
54 Int(int) => int.fmt(f),
55 Boolean(boolean) => boolean.fmt(f),
56 String(string) => fmt::Debug::fmt(string, f),
57 }
58 }
59}
60
61impl<NumericTypes: EvalexprNumericTypes> fmt::Display for PartialToken<NumericTypes> {
62 fn fmt(&self, f: &mut fmt::Formatter) -> Result<(), fmt::Error> {
63 use self::PartialToken::*;
64 match self {
65 Token(token) => token.fmt(f),
66 Literal(literal) => literal.fmt(f),
67 Whitespace => write!(f, " "),
68 Plus => write!(f, "+"),
69 Minus => write!(f, "-"),
70 Star => write!(f, "*"),
71 Slash => write!(f, "/"),
72 Percent => write!(f, "%"),
73 Hat => write!(f, "^"),
74 Eq => write!(f, "="),
75 ExclamationMark => write!(f, "!"),
76 Gt => write!(f, ">"),
77 Lt => write!(f, "<"),
78 Ampersand => write!(f, "&"),
79 VerticalBar => write!(f, "|"),
80 }
81 }
82}