summaryrefslogtreecommitdiff
path: root/source/Syntax/Abstract.hs
diff options
context:
space:
mode:
authoradelon <22380201+adelon@users.noreply.github.com>2026-02-05 17:00:19 +0100
committeradelon <22380201+adelon@users.noreply.github.com>2026-02-05 17:00:19 +0100
commitb5e47cd41837d65973b3c29603b7a335436c398a (patch)
treed4d5f627a69baf37df30b99a3f232ceaca0ff2ad /source/Syntax/Abstract.hs
parent762ff75e9e79ac2d74b392f93c2eceea52f43481 (diff)
Prepare mixfix refactor
Diffstat (limited to 'source/Syntax/Abstract.hs')
-rw-r--r--source/Syntax/Abstract.hs13
1 files changed, 13 insertions, 0 deletions
diff --git a/source/Syntax/Abstract.hs b/source/Syntax/Abstract.hs
index b2462c3..24bbdb6 100644
--- a/source/Syntax/Abstract.hs
+++ b/source/Syntax/Abstract.hs
@@ -51,6 +51,19 @@ data Expr
deriving (Show, Eq, Ord)
+data LexicalItem = LexicalItem Pattern Marker deriving (Eq, Show, Ord)
+data LexicalItemSgPl = LexicalItemSgPl (SgPl Pattern) Marker deriving (Eq, Show, Ord)
+
+data Associativity
+ = LeftAssoc
+ | NonAssoc
+ | RightAssoc
+ deriving (Eq, Show, Ord)
+
+data MixfixItem = MixfixItem Pattern Marker Associativity deriving (Eq, Show, Ord)
+
+data Pattern = End | HoleCons Pattern | TokenCons Token Pattern deriving (Eq, Show, Ord)
+
type FunctionSymbol = Holey Token
type RelationSymbol = Token