yi-0.6.2.3: The Haskell-Scriptable EditorSource codeContentsIndex
Yi.Syntax.Haskell
Synopsis
type PModule = Exp
type PModuleDecl = Exp
type PImport = Exp
data Exp t
= PModule {
comments :: [t]
progMod :: Maybe (PModule t)
}
| ProgMod {
modDecl :: PModuleDecl t
body :: PModule t
}
| Body {
imports :: Exp t
content :: Block t
extraContent :: Block t
}
| PModuleDecl {
moduleKeyword :: PAtom t
name :: PAtom t
exports :: Exp t
whereKeyword :: Exp t
}
| PImport {
importKeyword :: PAtom t
qual :: Exp t
name' :: PAtom t
as :: Exp t
specification :: Exp t
}
| TS t [Exp t]
| PType {
typeKeyword :: PAtom t
typeCons :: Exp t
equal :: PAtom t
btype :: Exp t
}
| PData {
dataKeyword :: PAtom t
dtypeCons :: Exp t
dEqual :: Exp t
dataRhs :: Exp t
}
| PData' {
dEqual :: PAtom t
dataCons :: Exp t
}
| PClass {
cKeyword :: PAtom t
cHead :: Exp t
cwhere :: Exp t
}
| Paren (PAtom t) [Exp t] (PAtom t)
| Block [Exp t]
| PAtom t [t]
| Expr [Exp t]
| PWhere (PAtom t) (Exp t) (Exp t)
| Bin (Exp t) (Exp t)
| PError {
errorTok :: t
marker :: t
commentList :: [t]
}
| RHS (PAtom t) (Exp t)
| Opt (Maybe (Exp t))
| Modid t [t]
| Context (Exp t) (Exp t) (PAtom t)
| PGuard [PGuard t]
| PGuard' (PAtom t) (Exp t) (PAtom t)
| TC (Exp t)
| DC (Exp t)
| PLet (PAtom t) (Exp t) (Exp t)
| PIn t [Exp t]
type Tree = PModule
parse :: P TT (Tree TT)
indentScanner :: Scanner (AlexState lexState) TT -> Scanner (State Token lexState) TT
Documentation
type PModule = ExpSource
type PModuleDecl = ExpSource
type PImport = ExpSource
data Exp t Source
Exp can be expression or declaration
Constructors
PModule
comments :: [t]
progMod :: Maybe (PModule t)
ProgMod
modDecl :: PModuleDecl t
body :: PModule tThe module declaration part
Body
imports :: Exp t
content :: Block t
extraContent :: Block tThe body of the module
PModuleDecl
moduleKeyword :: PAtom t
name :: PAtom t
exports :: Exp t
whereKeyword :: Exp t
PImport
importKeyword :: PAtom t
qual :: Exp t
name' :: PAtom t
as :: Exp t
specification :: Exp t
TS t [Exp t]Type signature
PTypeType declaration
typeKeyword :: PAtom t
typeCons :: Exp t
equal :: PAtom t
btype :: Exp t
PDataData declaration
dataKeyword :: PAtom t
dtypeCons :: Exp t
dEqual :: Exp t
dataRhs :: Exp t
PData'
dEqual :: PAtom t
dataCons :: Exp tData declaration RHS
PClass
cKeyword :: PAtom t
cHead :: Exp t
cwhere :: Exp tClass declaration
Paren (PAtom t) [Exp t] (PAtom t)A parenthesized, bracked or braced
Block [Exp t]A block of things separated by layout
PAtom t [t]An atom is a token followed by many comments
Expr [Exp t]
PWhere (PAtom t) (Exp t) (Exp t)Where clause
Bin (Exp t) (Exp t)
PError
errorTok :: t
marker :: t
commentList :: [t]An wrapper for errors
RHS (PAtom t) (Exp t)Righthandside of functions with =
Opt (Maybe (Exp t))An optional
Modid t [t]Module identifier
Context (Exp t) (Exp t) (PAtom t)
PGuard [PGuard t]Righthandside of functions with | the PAtom in PGuard' does not contain any comments
PGuard' (PAtom t) (Exp t) (PAtom t)
TC (Exp t)Type constructor data constructor same as with the TC constructor
DC (Exp t)Data constructor
PLet (PAtom t) (Exp t) (Exp t)let expression
PIn t [Exp t]
show/hide Instances
type Tree = PModuleSource
parse :: P TT (Tree TT)Source
The parser
indentScanner :: Scanner (AlexState lexState) TT -> Scanner (State Token lexState) TTSource
Produced by Haddock version 2.6.1