From 28c3a797ec7a6fbe3f5069604e5b19a00ae52344 Mon Sep 17 00:00:00 2001 From: Martin Haug Date: Tue, 14 Jul 2020 19:09:58 +0200 Subject: Add named tuples and hex color tokens --- src/syntax/test.rs | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'src/syntax/test.rs') diff --git a/src/syntax/test.rs b/src/syntax/test.rs index 22ce45e5..ca47c0c5 100644 --- a/src/syntax/test.rs +++ b/src/syntax/test.rs @@ -1,7 +1,7 @@ use std::fmt::Debug; use super::func::FuncHeader; -use super::expr::{Expr, Tuple, Object}; +use super::expr::{Expr, Tuple, NamedTuple, Object}; use super::span::{Span, Spanned}; use super::tokens::Token; use super::*; @@ -127,6 +127,7 @@ impl SpanlessEq for DebugFn { impl SpanlessEq for Expr { fn spanless_eq(&self, other: &Expr) -> bool { match (self, other) { + (Expr::NamedTuple(a), Expr::NamedTuple(b)) => a.spanless_eq(b), (Expr::Tuple(a), Expr::Tuple(b)) => a.spanless_eq(b), (Expr::Object(a), Expr::Object(b)) => a.spanless_eq(b), (a, b) => a == b, @@ -142,6 +143,13 @@ impl SpanlessEq for Tuple { } } +impl SpanlessEq for NamedTuple { + fn spanless_eq(&self, other: &NamedTuple) -> bool { + self.name.v == other.name.v + && self.tuple.v.spanless_eq(&other.tuple.v) + } +} + impl SpanlessEq for Object { fn spanless_eq(&self, other: &Object) -> bool { self.pairs.len() == other.pairs.len() -- cgit v1.2.3