Safe Haskell | None |
---|
Postfix, or RPN, expression parsing.
This module parses RPN expressions where the operands are
predicates and the operators are one of and
, or
, or not
,
where and
and or
are binary and not
is unary.
- type Error = Text
- data RPNToken a
- = TokOperand (Pdct a)
- | TokOperator Operator
- data Operator
- pushOperand :: Pdct a -> [Pdct a] -> [Pdct a]
- pushOperator :: Operator -> [Pdct a] -> Either Error [Pdct a]
- pushToken :: [Pdct a] -> RPNToken a -> Either Error [Pdct a]
- parseRPN :: Foldable f => f (RPNToken a) -> Either Error (Pdct a)