module Language.Drasil.ModelExpr.Precedence where
import Language.Drasil.ModelExpr.Lang
prec2Arith :: ArithBinOp -> Int
prec2Arith :: ArithBinOp -> Int
prec2Arith ArithBinOp
Frac = Int
190
prec2Arith ArithBinOp
Pow = Int
200
prec2Arith ArithBinOp
Subt = Int
180
prec2Bool :: BoolBinOp -> Int
prec2Bool :: BoolBinOp -> Int
prec2Bool BoolBinOp
_ = Int
130
prec2Eq :: EqBinOp -> Int
prec2Eq :: EqBinOp -> Int
prec2Eq EqBinOp
_ = Int
130
prec2LA :: LABinOp -> Int
prec2LA :: LABinOp -> Int
prec2LA LABinOp
_ = Int
250
prec2Ord :: OrdBinOp -> Int
prec2Ord :: OrdBinOp -> Int
prec2Ord OrdBinOp
_ = Int
130
prec2Spc :: SpaceBinOp -> Int
prec2Spc :: SpaceBinOp -> Int
prec2Spc SpaceBinOp
_ = Int
170
prec2Stat :: StatBinOp -> Int
prec2Stat :: StatBinOp -> Int
prec2Stat StatBinOp
_ = Int
130
prec2VVV :: VVVBinOp -> Int
prec2VVV :: VVVBinOp -> Int
prec2VVV VVVBinOp
_ = Int
190
prec2VVN :: VVNBinOp -> Int
prec2VVN :: VVNBinOp -> Int
prec2VVN VVNBinOp
_ = Int
190
prec2NVV :: NVVBinOp -> Int
prec2NVV :: NVVBinOp -> Int
prec2NVV NVVBinOp
_ = Int
190
prec2ESS :: ESSBinOp -> Int
prec2ESS :: ESSBinOp -> Int
prec2ESS ESSBinOp
_ = Int
190
prec2ESB :: ESBBinOp -> Int
prec2ESB :: ESBBinOp -> Int
prec2ESB ESBBinOp
_ = Int
190
precA :: AssocArithOper -> Int
precA :: AssocArithOper -> Int
precA AssocArithOper
Mul = Int
190
precA AssocArithOper
Add = Int
180
precB :: AssocBoolOper -> Int
precB :: AssocBoolOper -> Int
precB AssocBoolOper
And = Int
120
precB AssocBoolOper
Or = Int
110
precB AssocBoolOper
Equivalence = Int
100
precC :: AssocConcatOper -> Int
precC :: AssocConcatOper -> Int
precC AssocConcatOper
SUnion = Int
180
prec1 :: UFunc -> Int
prec1 :: UFunc -> Int
prec1 UFunc
Neg = Int
230
prec1 UFunc
Exp = Int
200
prec1 UFunc
_ = Int
250
prec1B :: UFuncB -> Int
prec1B :: UFuncB -> Int
prec1B UFuncB
Not = Int
230
prec1VV :: UFuncVV -> Int
prec1VV :: UFuncVV -> Int
prec1VV UFuncVV
_ = Int
250
prec1VN :: UFuncVN -> Int
prec1VN :: UFuncVN -> Int
prec1VN UFuncVN
_ = Int
230
mePrec :: ModelExpr -> Int
mePrec :: ModelExpr -> Int
mePrec Lit{} = Int
500
mePrec Spc{} = Int
500
mePrec (AssocA AssocArithOper
op [ModelExpr]
_) = AssocArithOper -> Int
precA AssocArithOper
op
mePrec (AssocB AssocBoolOper
op [ModelExpr]
_) = AssocBoolOper -> Int
precB AssocBoolOper
op
mePrec (AssocC AssocConcatOper
op [ModelExpr]
_) = AssocConcatOper -> Int
precC AssocConcatOper
op
mePrec C{} = Int
500
mePrec Deriv{} = ArithBinOp -> Int
prec2Arith ArithBinOp
Frac
mePrec FCall{} = Int
210
mePrec Case{} = Int
200
mePrec Matrix{} = Int
220
mePrec Set{} = Int
220
mePrec (Variable String
_ ModelExpr
_) = Int
220
mePrec (UnaryOp UFunc
fn ModelExpr
_) = UFunc -> Int
prec1 UFunc
fn
mePrec (UnaryOpB UFuncB
fn ModelExpr
_) = UFuncB -> Int
prec1B UFuncB
fn
mePrec (UnaryOpVV UFuncVV
fn ModelExpr
_) = UFuncVV -> Int
prec1VV UFuncVV
fn
mePrec (UnaryOpVN UFuncVN
fn ModelExpr
_) = UFuncVN -> Int
prec1VN UFuncVN
fn
mePrec (Operator AssocArithOper
o DomainDesc t ModelExpr ModelExpr
_ ModelExpr
_) = AssocArithOper -> Int
precA AssocArithOper
o
mePrec (ArithBinaryOp ArithBinOp
bo ModelExpr
_ ModelExpr
_) = ArithBinOp -> Int
prec2Arith ArithBinOp
bo
mePrec (BoolBinaryOp BoolBinOp
bo ModelExpr
_ ModelExpr
_) = BoolBinOp -> Int
prec2Bool BoolBinOp
bo
mePrec (EqBinaryOp EqBinOp
bo ModelExpr
_ ModelExpr
_) = EqBinOp -> Int
prec2Eq EqBinOp
bo
mePrec (LABinaryOp LABinOp
bo ModelExpr
_ ModelExpr
_) = LABinOp -> Int
prec2LA LABinOp
bo
mePrec (SpaceBinaryOp SpaceBinOp
bo ModelExpr
_ ModelExpr
_) = SpaceBinOp -> Int
prec2Spc SpaceBinOp
bo
mePrec (StatBinaryOp StatBinOp
bo ModelExpr
_ ModelExpr
_) = StatBinOp -> Int
prec2Stat StatBinOp
bo
mePrec (OrdBinaryOp OrdBinOp
bo ModelExpr
_ ModelExpr
_) = OrdBinOp -> Int
prec2Ord OrdBinOp
bo
mePrec (VVVBinaryOp VVVBinOp
bo ModelExpr
_ ModelExpr
_) = VVVBinOp -> Int
prec2VVV VVVBinOp
bo
mePrec (VVNBinaryOp VVNBinOp
bo ModelExpr
_ ModelExpr
_) = VVNBinOp -> Int
prec2VVN VVNBinOp
bo
mePrec (NVVBinaryOp NVVBinOp
bo ModelExpr
_ ModelExpr
_) = NVVBinOp -> Int
prec2NVV NVVBinOp
bo
mePrec (ESSBinaryOp ESSBinOp
bo ModelExpr
_ ModelExpr
_) = ESSBinOp -> Int
prec2ESS ESSBinOp
bo
mePrec (ESBBinaryOp ESBBinOp
bo ModelExpr
_ ModelExpr
_) = ESBBinOp -> Int
prec2ESB ESBBinOp
bo
mePrec RealI{} = Int
170
mePrec ForAll{} = Int
130