Safe Haskell | None |
---|---|
Language | Haskell98 |
- table :: [FixDecl] -> OperatorTable IdrisParser PTerm
- toTable :: [FixDecl] -> OperatorTable IdrisParser PTerm
- binary :: String -> (FC -> PTerm -> PTerm -> PTerm) -> Assoc -> Operator IdrisParser PTerm
- prefix :: String -> (FC -> PTerm -> PTerm) -> Operator IdrisParser PTerm
- backtick :: Operator IdrisParser PTerm
- nofixityoperator :: Operator IdrisParser PTerm
- operatorFront :: IdrisParser Name
- fnName :: IdrisParser Name
- fixity :: IdrisParser PDecl
- fixityType :: IdrisParser (Int -> Fixity)
Documentation
table :: [FixDecl] -> OperatorTable IdrisParser PTerm Source
Creates table for fixity declarations to build expression parser using pre-build and user-defined operator/fixity declarations
toTable :: [FixDecl] -> OperatorTable IdrisParser PTerm Source
Calculates table for fixtiy declarations
binary :: String -> (FC -> PTerm -> PTerm -> PTerm) -> Assoc -> Operator IdrisParser PTerm Source
Binary operator
backtick :: Operator IdrisParser PTerm Source
Backtick operator
nofixityoperator :: Operator IdrisParser PTerm Source
Operator without fixity (throws an error)
operatorFront :: IdrisParser Name Source
Parses an operator in function position i.e. enclosed by `()', with an optional namespace
OperatorFront ::=
'(' '=' ')'
| (Identifier_t .
)? '(' Operator_t ')'
;
fnName :: IdrisParser Name Source
Parses a function (either normal name or operator)
FnName ::= Name | OperatorFront;
fixity :: IdrisParser PDecl Source
Parses a fixity declaration
Fixity ::=
FixityType Natural_t OperatorList Terminator
;
fixityType :: IdrisParser (Int -> Fixity) Source
Parses a fixity declaration type (i.e. infix or prefix, associtavity)
FixityType ::=
'infixl'
| 'infixr'
| 'infix'
|
prefix
;