open_pql/pql_parser/ast/
num.rs1use super::*;
2
3#[derive(Debug, Clone, PartialEq, Eq, From)]
4pub struct Num<'i> {
5 pub inner: &'i str,
6 pub loc: (Loc, Loc),
7 pub is_float: bool,
8}
9
10#[cfg(test)]
11mod tests {
12 use super::{super::super::parser::*, *};
13
14 fn i(s: &str) -> Num<'_> {
15 NumParser::new().parse(s).unwrap()
16 }
17
18 #[test]
19 fn test_num() {
20 assert_eq!(i("0"), ("0", (0, 1), false).into());
21 assert_eq!(i("-1"), ("-1", (0, 2), false).into());
22
23 assert_eq!(i("-1.5"), ("-1.5", (0, 4), true).into());
24 assert_eq!(i("-.5"), ("-.5", (0, 3), true).into());
25 assert_eq!(i(".5"), (".5", (0, 2), true).into());
26 }
27}