summaryrefslogtreecommitdiff
path: root/src/syntax/test.rs
diff options
context:
space:
mode:
authorLaurenz <laurmaedje@gmail.com>2020-07-15 23:49:45 +0200
committerGitHub <noreply@github.com>2020-07-15 23:49:45 +0200
commit0fd327bbc9c0aa0ce74516ec36a305877bba05fa (patch)
tree62c12d1ff134a1a89dd4565270e9b862e96f8788 /src/syntax/test.rs
parent1658b00282b631fb5218f477ea7f45f925644cea (diff)
parente96f3830f19ed63ae8b43f8ce33f824237b34d82 (diff)
Merge pull request #1 from typst/named_tuples
Add named tuples and hex color tokens
Diffstat (limited to 'src/syntax/test.rs')
-rw-r--r--src/syntax/test.rs10
1 files changed, 9 insertions, 1 deletions
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()