language-javascript-0.7.1.0: Parser for JavaScript
Safe HaskellSafe-Inferred
LanguageHaskell98

Language.JavaScript.Parser.AST

Synopsis

Documentation

data JSExpression Source #

Constructors

JSIdentifier !JSAnnot !String

Terminals

JSDecimal !JSAnnot !String 
JSLiteral !JSAnnot !String 
JSHexInteger !JSAnnot !String 
JSOctal !JSAnnot !String 
JSStringLiteral !JSAnnot !String 
JSRegEx !JSAnnot !String 
JSArrayLiteral

Non Terminals

Fields

JSAssignExpression !JSExpression !JSAssignOp !JSExpression

lhs, assignop, rhs

JSAwaitExpression !JSAnnot !JSExpression

await, expr

JSCallExpression !JSExpression !JSAnnot !(JSCommaList JSExpression) !JSAnnot

expr, bl, args, rb

JSCallExpressionDot !JSExpression !JSAnnot !JSExpression

expr, dot, expr

JSCallExpressionSquare !JSExpression !JSAnnot !JSExpression !JSAnnot

expr, [, expr, ]

JSClassExpression !JSAnnot !JSIdent !JSClassHeritage !JSAnnot ![JSClassElement] !JSAnnot

class, optional identifier, optional extends clause, lb, body, rb

JSCommaExpression !JSExpression !JSAnnot !JSExpression

expression components

JSExpressionBinary !JSExpression !JSBinOp !JSExpression

lhs, op, rhs

JSExpressionParen !JSAnnot !JSExpression !JSAnnot

lb,expression,rb

JSExpressionPostfix !JSExpression !JSUnaryOp

expression, operator

JSExpressionTernary !JSExpression !JSAnnot !JSExpression !JSAnnot !JSExpression

cond, ?, trueval, :, falseval

JSArrowExpression !JSArrowParameterList !JSAnnot !JSStatement

parameter list,arrow,block`

JSFunctionExpression !JSAnnot !JSIdent !JSAnnot !(JSCommaList JSExpression) !JSAnnot !JSBlock

fn,name,lb, parameter list,rb,block`

JSGeneratorExpression !JSAnnot !JSAnnot !JSIdent !JSAnnot !(JSCommaList JSExpression) !JSAnnot !JSBlock

fn,*,name,lb, parameter list,rb,block`

JSMemberDot !JSExpression !JSAnnot !JSExpression

firstpart, dot, name

JSMemberExpression !JSExpression !JSAnnot !(JSCommaList JSExpression) !JSAnnot 
JSMemberNew !JSAnnot !JSExpression !JSAnnot !(JSCommaList JSExpression) !JSAnnot

new, name, lb, args, rb

JSMemberSquare !JSExpression !JSAnnot !JSExpression !JSAnnot

firstpart, lb, expr, rb

JSNewExpression !JSAnnot !JSExpression

new, expr

JSObjectLiteral !JSAnnot !JSObjectPropertyList !JSAnnot

lbrace contents rbrace

JSSpreadExpression !JSAnnot !JSExpression 
JSTemplateLiteral !(Maybe JSExpression) !JSAnnot !String ![JSTemplatePart]

optional tag, lquot, head, parts

JSUnaryExpression !JSUnaryOp !JSExpression 
JSVarInitExpression !JSExpression !JSVarInitializer

identifier, initializer

JSYieldExpression !JSAnnot !(Maybe JSExpression)

yield, optional expr

JSYieldFromExpression !JSAnnot !JSAnnot !JSExpression

yield, *, expr

Instances

Instances details
Data JSExpression Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSExpression -> c JSExpression

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JSExpression

toConstr :: JSExpression -> Constr

dataTypeOf :: JSExpression -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JSExpression)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JSExpression)

gmapT :: (forall b. Data b => b -> b) -> JSExpression -> JSExpression

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSExpression -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSExpression -> r

gmapQ :: (forall d. Data d => d -> u) -> JSExpression -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSExpression -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSExpression -> m JSExpression

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSExpression -> m JSExpression

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSExpression -> m JSExpression

Show JSExpression Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSExpression -> ShowS

show :: JSExpression -> String

showList :: [JSExpression] -> ShowS

Eq JSExpression Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

(==) :: JSExpression -> JSExpression -> Bool

(/=) :: JSExpression -> JSExpression -> Bool

data JSAnnot Source #

Constructors

JSAnnot !TokenPosn ![CommentAnnotation]

Annotation: position and comment/whitespace information

JSAnnotSpace

A single space character

JSNoAnnot

No annotation

Instances

Instances details
Data JSAnnot Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSAnnot -> c JSAnnot

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JSAnnot

toConstr :: JSAnnot -> Constr

dataTypeOf :: JSAnnot -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JSAnnot)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JSAnnot)

gmapT :: (forall b. Data b => b -> b) -> JSAnnot -> JSAnnot

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSAnnot -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSAnnot -> r

gmapQ :: (forall d. Data d => d -> u) -> JSAnnot -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSAnnot -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSAnnot -> m JSAnnot

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSAnnot -> m JSAnnot

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSAnnot -> m JSAnnot

Show JSAnnot Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSAnnot -> ShowS

show :: JSAnnot -> String

showList :: [JSAnnot] -> ShowS

Eq JSAnnot Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

(==) :: JSAnnot -> JSAnnot -> Bool

(/=) :: JSAnnot -> JSAnnot -> Bool

data JSBinOp Source #

Instances

Instances details
Data JSBinOp Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSBinOp -> c JSBinOp

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JSBinOp

toConstr :: JSBinOp -> Constr

dataTypeOf :: JSBinOp -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JSBinOp)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JSBinOp)

gmapT :: (forall b. Data b => b -> b) -> JSBinOp -> JSBinOp

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSBinOp -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSBinOp -> r

gmapQ :: (forall d. Data d => d -> u) -> JSBinOp -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSBinOp -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSBinOp -> m JSBinOp

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSBinOp -> m JSBinOp

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSBinOp -> m JSBinOp

Show JSBinOp Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSBinOp -> ShowS

show :: JSBinOp -> String

showList :: [JSBinOp] -> ShowS

Eq JSBinOp Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

(==) :: JSBinOp -> JSBinOp -> Bool

(/=) :: JSBinOp -> JSBinOp -> Bool

data JSUnaryOp Source #

Instances

Instances details
Data JSUnaryOp Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSUnaryOp -> c JSUnaryOp

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JSUnaryOp

toConstr :: JSUnaryOp -> Constr

dataTypeOf :: JSUnaryOp -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JSUnaryOp)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JSUnaryOp)

gmapT :: (forall b. Data b => b -> b) -> JSUnaryOp -> JSUnaryOp

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSUnaryOp -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSUnaryOp -> r

gmapQ :: (forall d. Data d => d -> u) -> JSUnaryOp -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSUnaryOp -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSUnaryOp -> m JSUnaryOp

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSUnaryOp -> m JSUnaryOp

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSUnaryOp -> m JSUnaryOp

Show JSUnaryOp Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSUnaryOp -> ShowS

show :: JSUnaryOp -> String

showList :: [JSUnaryOp] -> ShowS

Eq JSUnaryOp Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

(==) :: JSUnaryOp -> JSUnaryOp -> Bool

(/=) :: JSUnaryOp -> JSUnaryOp -> Bool

data JSSemi Source #

Constructors

JSSemi !JSAnnot 
JSSemiAuto 

Instances

Instances details
Data JSSemi Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSSemi -> c JSSemi

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JSSemi

toConstr :: JSSemi -> Constr

dataTypeOf :: JSSemi -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JSSemi)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JSSemi)

gmapT :: (forall b. Data b => b -> b) -> JSSemi -> JSSemi

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSSemi -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSSemi -> r

gmapQ :: (forall d. Data d => d -> u) -> JSSemi -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSSemi -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSSemi -> m JSSemi

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSSemi -> m JSSemi

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSSemi -> m JSSemi

Show JSSemi Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSSemi -> ShowS

show :: JSSemi -> String

showList :: [JSSemi] -> ShowS

Eq JSSemi Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

(==) :: JSSemi -> JSSemi -> Bool

(/=) :: JSSemi -> JSSemi -> Bool

data JSAssignOp Source #

Instances

Instances details
Data JSAssignOp Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSAssignOp -> c JSAssignOp

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JSAssignOp

toConstr :: JSAssignOp -> Constr

dataTypeOf :: JSAssignOp -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JSAssignOp)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JSAssignOp)

gmapT :: (forall b. Data b => b -> b) -> JSAssignOp -> JSAssignOp

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSAssignOp -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSAssignOp -> r

gmapQ :: (forall d. Data d => d -> u) -> JSAssignOp -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSAssignOp -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSAssignOp -> m JSAssignOp

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSAssignOp -> m JSAssignOp

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSAssignOp -> m JSAssignOp

Show JSAssignOp Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSAssignOp -> ShowS

show :: JSAssignOp -> String

showList :: [JSAssignOp] -> ShowS

Eq JSAssignOp Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

(==) :: JSAssignOp -> JSAssignOp -> Bool

(/=) :: JSAssignOp -> JSAssignOp -> Bool

data JSTryCatch Source #

Constructors

JSCatch !JSAnnot !JSAnnot !JSExpression !JSAnnot !JSBlock

catch,lb,ident,rb,block

JSCatchIf !JSAnnot !JSAnnot !JSExpression !JSAnnot !JSExpression !JSAnnot !JSBlock

catch,lb,ident,if,expr,rb,block

Instances

Instances details
Data JSTryCatch Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSTryCatch -> c JSTryCatch

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JSTryCatch

toConstr :: JSTryCatch -> Constr

dataTypeOf :: JSTryCatch -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JSTryCatch)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JSTryCatch)

gmapT :: (forall b. Data b => b -> b) -> JSTryCatch -> JSTryCatch

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSTryCatch -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSTryCatch -> r

gmapQ :: (forall d. Data d => d -> u) -> JSTryCatch -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSTryCatch -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSTryCatch -> m JSTryCatch

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSTryCatch -> m JSTryCatch

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSTryCatch -> m JSTryCatch

Show JSTryCatch Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSTryCatch -> ShowS

show :: JSTryCatch -> String

showList :: [JSTryCatch] -> ShowS

Eq JSTryCatch Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

(==) :: JSTryCatch -> JSTryCatch -> Bool

(/=) :: JSTryCatch -> JSTryCatch -> Bool

data JSTryFinally Source #

Constructors

JSFinally !JSAnnot !JSBlock

finally,block

JSNoFinally 

Instances

Instances details
Data JSTryFinally Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSTryFinally -> c JSTryFinally

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JSTryFinally

toConstr :: JSTryFinally -> Constr

dataTypeOf :: JSTryFinally -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JSTryFinally)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JSTryFinally)

gmapT :: (forall b. Data b => b -> b) -> JSTryFinally -> JSTryFinally

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSTryFinally -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSTryFinally -> r

gmapQ :: (forall d. Data d => d -> u) -> JSTryFinally -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSTryFinally -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSTryFinally -> m JSTryFinally

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSTryFinally -> m JSTryFinally

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSTryFinally -> m JSTryFinally

Show JSTryFinally Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSTryFinally -> ShowS

show :: JSTryFinally -> String

showList :: [JSTryFinally] -> ShowS

Eq JSTryFinally Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

(==) :: JSTryFinally -> JSTryFinally -> Bool

(/=) :: JSTryFinally -> JSTryFinally -> Bool

data JSStatement Source #

Constructors

JSStatementBlock !JSAnnot ![JSStatement] !JSAnnot !JSSemi

lbrace, stmts, rbrace, autosemi

JSBreak !JSAnnot !JSIdent !JSSemi

break,optional identifier, autosemi

JSLet !JSAnnot !(JSCommaList JSExpression) !JSSemi

const, decl, autosemi

JSClass !JSAnnot !JSIdent !JSClassHeritage !JSAnnot ![JSClassElement] !JSAnnot !JSSemi

class, name, optional extends clause, lb, body, rb, autosemi

JSConstant !JSAnnot !(JSCommaList JSExpression) !JSSemi

const, decl, autosemi

JSContinue !JSAnnot !JSIdent !JSSemi

continue, optional identifier,autosemi

JSDoWhile !JSAnnot !JSStatement !JSAnnot !JSAnnot !JSExpression !JSAnnot !JSSemi

do,stmt,while,lb,expr,rb,autosemi

JSFor !JSAnnot !JSAnnot !(JSCommaList JSExpression) !JSAnnot !(JSCommaList JSExpression) !JSAnnot !(JSCommaList JSExpression) !JSAnnot !JSStatement

for,lb,expr,semi,expr,semi,expr,rb.stmt

JSForIn !JSAnnot !JSAnnot !JSExpression !JSBinOp !JSExpression !JSAnnot !JSStatement

for,lb,expr,in,expr,rb,stmt

JSForVar !JSAnnot !JSAnnot !JSAnnot !(JSCommaList JSExpression) !JSAnnot !(JSCommaList JSExpression) !JSAnnot !(JSCommaList JSExpression) !JSAnnot !JSStatement

for,lb,var,vardecl,semi,expr,semi,expr,rb,stmt

JSForVarIn !JSAnnot !JSAnnot !JSAnnot !JSExpression !JSBinOp !JSExpression !JSAnnot !JSStatement

for,lb,var,vardecl,in,expr,rb,stmt

JSForLet !JSAnnot !JSAnnot !JSAnnot !(JSCommaList JSExpression) !JSAnnot !(JSCommaList JSExpression) !JSAnnot !(JSCommaList JSExpression) !JSAnnot !JSStatement

for,lb,var,vardecl,semi,expr,semi,expr,rb,stmt

JSForLetIn !JSAnnot !JSAnnot !JSAnnot !JSExpression !JSBinOp !JSExpression !JSAnnot !JSStatement

for,lb,var,vardecl,in,expr,rb,stmt

JSForLetOf !JSAnnot !JSAnnot !JSAnnot !JSExpression !JSBinOp !JSExpression !JSAnnot !JSStatement

for,lb,var,vardecl,in,expr,rb,stmt

JSForConst !JSAnnot !JSAnnot !JSAnnot !(JSCommaList JSExpression) !JSAnnot !(JSCommaList JSExpression) !JSAnnot !(JSCommaList JSExpression) !JSAnnot !JSStatement

for,lb,var,vardecl,semi,expr,semi,expr,rb,stmt

JSForConstIn !JSAnnot !JSAnnot !JSAnnot !JSExpression !JSBinOp !JSExpression !JSAnnot !JSStatement

for,lb,var,vardecl,in,expr,rb,stmt

JSForConstOf !JSAnnot !JSAnnot !JSAnnot !JSExpression !JSBinOp !JSExpression !JSAnnot !JSStatement

for,lb,var,vardecl,in,expr,rb,stmt

JSForOf !JSAnnot !JSAnnot !JSExpression !JSBinOp !JSExpression !JSAnnot !JSStatement

for,lb,expr,in,expr,rb,stmt

JSForVarOf !JSAnnot !JSAnnot !JSAnnot !JSExpression !JSBinOp !JSExpression !JSAnnot !JSStatement

for,lb,var,vardecl,in,expr,rb,stmt

JSAsyncFunction !JSAnnot !JSAnnot !JSIdent !JSAnnot !(JSCommaList JSExpression) !JSAnnot !JSBlock !JSSemi

fn,name, lb,parameter list,rb,block,autosemi

JSFunction !JSAnnot !JSIdent !JSAnnot !(JSCommaList JSExpression) !JSAnnot !JSBlock !JSSemi

fn,name, lb,parameter list,rb,block,autosemi

JSGenerator !JSAnnot !JSAnnot !JSIdent !JSAnnot !(JSCommaList JSExpression) !JSAnnot !JSBlock !JSSemi

fn,*,name, lb,parameter list,rb,block,autosemi

JSIf !JSAnnot !JSAnnot !JSExpression !JSAnnot !JSStatement

if,(,expr,),stmt

JSIfElse !JSAnnot !JSAnnot !JSExpression !JSAnnot !JSStatement !JSAnnot !JSStatement

if,(,expr,),stmt,else,rest

JSLabelled !JSIdent !JSAnnot !JSStatement

identifier,colon,stmt

JSEmptyStatement !JSAnnot 
JSExpressionStatement !JSExpression !JSSemi 
JSAssignStatement !JSExpression !JSAssignOp !JSExpression !JSSemi

lhs, assignop, rhs, autosemi

JSMethodCall !JSExpression !JSAnnot !(JSCommaList JSExpression) !JSAnnot !JSSemi 
JSReturn !JSAnnot !(Maybe JSExpression) !JSSemi

optional expression,autosemi

JSSwitch !JSAnnot !JSAnnot !JSExpression !JSAnnot !JSAnnot ![JSSwitchParts] !JSAnnot !JSSemi

switch,lb,expr,rb,caseblock,autosemi

JSThrow !JSAnnot !JSExpression !JSSemi

throw val autosemi

JSTry !JSAnnot !JSBlock ![JSTryCatch] !JSTryFinally

try,block,catches,finally

JSVariable !JSAnnot !(JSCommaList JSExpression) !JSSemi

var, decl, autosemi

JSWhile !JSAnnot !JSAnnot !JSExpression !JSAnnot !JSStatement

while,lb,expr,rb,stmt

JSWith !JSAnnot !JSAnnot !JSExpression !JSAnnot !JSStatement !JSSemi

with,lb,expr,rb,stmt list

Instances

Instances details
Data JSStatement Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSStatement -> c JSStatement

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JSStatement

toConstr :: JSStatement -> Constr

dataTypeOf :: JSStatement -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JSStatement)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JSStatement)

gmapT :: (forall b. Data b => b -> b) -> JSStatement -> JSStatement

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSStatement -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSStatement -> r

gmapQ :: (forall d. Data d => d -> u) -> JSStatement -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSStatement -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSStatement -> m JSStatement

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSStatement -> m JSStatement

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSStatement -> m JSStatement

Show JSStatement Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSStatement -> ShowS

show :: JSStatement -> String

showList :: [JSStatement] -> ShowS

Eq JSStatement Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

(==) :: JSStatement -> JSStatement -> Bool

(/=) :: JSStatement -> JSStatement -> Bool

data JSBlock Source #

Constructors

JSBlock !JSAnnot ![JSStatement] !JSAnnot

lbrace, stmts, rbrace

Instances

Instances details
Data JSBlock Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSBlock -> c JSBlock

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JSBlock

toConstr :: JSBlock -> Constr

dataTypeOf :: JSBlock -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JSBlock)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JSBlock)

gmapT :: (forall b. Data b => b -> b) -> JSBlock -> JSBlock

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSBlock -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSBlock -> r

gmapQ :: (forall d. Data d => d -> u) -> JSBlock -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSBlock -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSBlock -> m JSBlock

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSBlock -> m JSBlock

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSBlock -> m JSBlock

Show JSBlock Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSBlock -> ShowS

show :: JSBlock -> String

showList :: [JSBlock] -> ShowS

Eq JSBlock Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

(==) :: JSBlock -> JSBlock -> Bool

(/=) :: JSBlock -> JSBlock -> Bool

data JSSwitchParts Source #

Constructors

JSCase !JSAnnot !JSExpression !JSAnnot ![JSStatement]

expr,colon,stmtlist

JSDefault !JSAnnot !JSAnnot ![JSStatement]

colon,stmtlist

Instances

Instances details
Data JSSwitchParts Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSSwitchParts -> c JSSwitchParts

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JSSwitchParts

toConstr :: JSSwitchParts -> Constr

dataTypeOf :: JSSwitchParts -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JSSwitchParts)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JSSwitchParts)

gmapT :: (forall b. Data b => b -> b) -> JSSwitchParts -> JSSwitchParts

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSSwitchParts -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSSwitchParts -> r

gmapQ :: (forall d. Data d => d -> u) -> JSSwitchParts -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSSwitchParts -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSSwitchParts -> m JSSwitchParts

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSSwitchParts -> m JSSwitchParts

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSSwitchParts -> m JSSwitchParts

Show JSSwitchParts Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSSwitchParts -> ShowS

show :: JSSwitchParts -> String

showList :: [JSSwitchParts] -> ShowS

Eq JSSwitchParts Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

data JSAST Source #

Instances

Instances details
Data JSAST Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSAST -> c JSAST

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JSAST

toConstr :: JSAST -> Constr

dataTypeOf :: JSAST -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JSAST)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JSAST)

gmapT :: (forall b. Data b => b -> b) -> JSAST -> JSAST

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSAST -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSAST -> r

gmapQ :: (forall d. Data d => d -> u) -> JSAST -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSAST -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSAST -> m JSAST

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSAST -> m JSAST

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSAST -> m JSAST

Show JSAST Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSAST -> ShowS

show :: JSAST -> String

showList :: [JSAST] -> ShowS

Eq JSAST Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

(==) :: JSAST -> JSAST -> Bool

(/=) :: JSAST -> JSAST -> Bool

data JSObjectProperty Source #

Instances

Instances details
Data JSObjectProperty Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSObjectProperty -> c JSObjectProperty

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JSObjectProperty

toConstr :: JSObjectProperty -> Constr

dataTypeOf :: JSObjectProperty -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JSObjectProperty)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JSObjectProperty)

gmapT :: (forall b. Data b => b -> b) -> JSObjectProperty -> JSObjectProperty

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSObjectProperty -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSObjectProperty -> r

gmapQ :: (forall d. Data d => d -> u) -> JSObjectProperty -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSObjectProperty -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSObjectProperty -> m JSObjectProperty

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSObjectProperty -> m JSObjectProperty

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSObjectProperty -> m JSObjectProperty

Show JSObjectProperty Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSObjectProperty -> ShowS

show :: JSObjectProperty -> String

showList :: [JSObjectProperty] -> ShowS

Eq JSObjectProperty Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

data JSPropertyName Source #

Instances

Instances details
Data JSPropertyName Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSPropertyName -> c JSPropertyName

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JSPropertyName

toConstr :: JSPropertyName -> Constr

dataTypeOf :: JSPropertyName -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JSPropertyName)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JSPropertyName)

gmapT :: (forall b. Data b => b -> b) -> JSPropertyName -> JSPropertyName

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSPropertyName -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSPropertyName -> r

gmapQ :: (forall d. Data d => d -> u) -> JSPropertyName -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSPropertyName -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSPropertyName -> m JSPropertyName

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSPropertyName -> m JSPropertyName

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSPropertyName -> m JSPropertyName

Show JSPropertyName Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSPropertyName -> ShowS

show :: JSPropertyName -> String

showList :: [JSPropertyName] -> ShowS

Eq JSPropertyName Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

data JSAccessor Source #

Accessors for JSObjectProperty is either get or set.

Instances

Instances details
Data JSAccessor Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSAccessor -> c JSAccessor

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JSAccessor

toConstr :: JSAccessor -> Constr

dataTypeOf :: JSAccessor -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JSAccessor)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JSAccessor)

gmapT :: (forall b. Data b => b -> b) -> JSAccessor -> JSAccessor

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSAccessor -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSAccessor -> r

gmapQ :: (forall d. Data d => d -> u) -> JSAccessor -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSAccessor -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSAccessor -> m JSAccessor

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSAccessor -> m JSAccessor

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSAccessor -> m JSAccessor

Show JSAccessor Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSAccessor -> ShowS

show :: JSAccessor -> String

showList :: [JSAccessor] -> ShowS

Eq JSAccessor Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

(==) :: JSAccessor -> JSAccessor -> Bool

(/=) :: JSAccessor -> JSAccessor -> Bool

data JSMethodDefinition Source #

Instances

Instances details
Data JSMethodDefinition Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSMethodDefinition -> c JSMethodDefinition

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JSMethodDefinition

toConstr :: JSMethodDefinition -> Constr

dataTypeOf :: JSMethodDefinition -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JSMethodDefinition)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JSMethodDefinition)

gmapT :: (forall b. Data b => b -> b) -> JSMethodDefinition -> JSMethodDefinition

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSMethodDefinition -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSMethodDefinition -> r

gmapQ :: (forall d. Data d => d -> u) -> JSMethodDefinition -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSMethodDefinition -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSMethodDefinition -> m JSMethodDefinition

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSMethodDefinition -> m JSMethodDefinition

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSMethodDefinition -> m JSMethodDefinition

Show JSMethodDefinition Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSMethodDefinition -> ShowS

show :: JSMethodDefinition -> String

showList :: [JSMethodDefinition] -> ShowS

Eq JSMethodDefinition Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

data JSIdent Source #

Constructors

JSIdentName !JSAnnot !String 
JSIdentNone 

Instances

Instances details
Data JSIdent Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSIdent -> c JSIdent

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JSIdent

toConstr :: JSIdent -> Constr

dataTypeOf :: JSIdent -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JSIdent)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JSIdent)

gmapT :: (forall b. Data b => b -> b) -> JSIdent -> JSIdent

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSIdent -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSIdent -> r

gmapQ :: (forall d. Data d => d -> u) -> JSIdent -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSIdent -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSIdent -> m JSIdent

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSIdent -> m JSIdent

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSIdent -> m JSIdent

Show JSIdent Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSIdent -> ShowS

show :: JSIdent -> String

showList :: [JSIdent] -> ShowS

Eq JSIdent Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

(==) :: JSIdent -> JSIdent -> Bool

(/=) :: JSIdent -> JSIdent -> Bool

data JSVarInitializer Source #

Constructors

JSVarInit !JSAnnot !JSExpression

assignop, initializer

JSVarInitNone 

Instances

Instances details
Data JSVarInitializer Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSVarInitializer -> c JSVarInitializer

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JSVarInitializer

toConstr :: JSVarInitializer -> Constr

dataTypeOf :: JSVarInitializer -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JSVarInitializer)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JSVarInitializer)

gmapT :: (forall b. Data b => b -> b) -> JSVarInitializer -> JSVarInitializer

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSVarInitializer -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSVarInitializer -> r

gmapQ :: (forall d. Data d => d -> u) -> JSVarInitializer -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSVarInitializer -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSVarInitializer -> m JSVarInitializer

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSVarInitializer -> m JSVarInitializer

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSVarInitializer -> m JSVarInitializer

Show JSVarInitializer Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSVarInitializer -> ShowS

show :: JSVarInitializer -> String

showList :: [JSVarInitializer] -> ShowS

Eq JSVarInitializer Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

data JSArrayElement Source #

Instances

Instances details
Data JSArrayElement Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSArrayElement -> c JSArrayElement

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JSArrayElement

toConstr :: JSArrayElement -> Constr

dataTypeOf :: JSArrayElement -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JSArrayElement)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JSArrayElement)

gmapT :: (forall b. Data b => b -> b) -> JSArrayElement -> JSArrayElement

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSArrayElement -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSArrayElement -> r

gmapQ :: (forall d. Data d => d -> u) -> JSArrayElement -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSArrayElement -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSArrayElement -> m JSArrayElement

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSArrayElement -> m JSArrayElement

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSArrayElement -> m JSArrayElement

Show JSArrayElement Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSArrayElement -> ShowS

show :: JSArrayElement -> String

showList :: [JSArrayElement] -> ShowS

Eq JSArrayElement Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

data JSCommaList a Source #

Constructors

JSLCons !(JSCommaList a) !JSAnnot !a

head, comma, a

JSLOne !a

single element (no comma)

JSLNil 

Instances

Instances details
Data a => Data (JSCommaList a) Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSCommaList a -> c (JSCommaList a)

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (JSCommaList a)

toConstr :: JSCommaList a -> Constr

dataTypeOf :: JSCommaList a -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (JSCommaList a))

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (JSCommaList a))

gmapT :: (forall b. Data b => b -> b) -> JSCommaList a -> JSCommaList a

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSCommaList a -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSCommaList a -> r

gmapQ :: (forall d. Data d => d -> u) -> JSCommaList a -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSCommaList a -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSCommaList a -> m (JSCommaList a)

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSCommaList a -> m (JSCommaList a)

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSCommaList a -> m (JSCommaList a)

Show a => Show (JSCommaList a) Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSCommaList a -> ShowS

show :: JSCommaList a -> String

showList :: [JSCommaList a] -> ShowS

Eq a => Eq (JSCommaList a) Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

(==) :: JSCommaList a -> JSCommaList a -> Bool

(/=) :: JSCommaList a -> JSCommaList a -> Bool

data JSCommaTrailingList a Source #

Constructors

JSCTLComma !(JSCommaList a) !JSAnnot

list, trailing comma

JSCTLNone !(JSCommaList a)

list

Instances

Instances details
Data a => Data (JSCommaTrailingList a) Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSCommaTrailingList a -> c (JSCommaTrailingList a)

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (JSCommaTrailingList a)

toConstr :: JSCommaTrailingList a -> Constr

dataTypeOf :: JSCommaTrailingList a -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (JSCommaTrailingList a))

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (JSCommaTrailingList a))

gmapT :: (forall b. Data b => b -> b) -> JSCommaTrailingList a -> JSCommaTrailingList a

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSCommaTrailingList a -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSCommaTrailingList a -> r

gmapQ :: (forall d. Data d => d -> u) -> JSCommaTrailingList a -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSCommaTrailingList a -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSCommaTrailingList a -> m (JSCommaTrailingList a)

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSCommaTrailingList a -> m (JSCommaTrailingList a)

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSCommaTrailingList a -> m (JSCommaTrailingList a)

Show a => Show (JSCommaTrailingList a) Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSCommaTrailingList a -> ShowS

show :: JSCommaTrailingList a -> String

showList :: [JSCommaTrailingList a] -> ShowS

Eq a => Eq (JSCommaTrailingList a) Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

data JSArrowParameterList Source #

Instances

Instances details
Data JSArrowParameterList Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSArrowParameterList -> c JSArrowParameterList

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JSArrowParameterList

toConstr :: JSArrowParameterList -> Constr

dataTypeOf :: JSArrowParameterList -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JSArrowParameterList)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JSArrowParameterList)

gmapT :: (forall b. Data b => b -> b) -> JSArrowParameterList -> JSArrowParameterList

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSArrowParameterList -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSArrowParameterList -> r

gmapQ :: (forall d. Data d => d -> u) -> JSArrowParameterList -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSArrowParameterList -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSArrowParameterList -> m JSArrowParameterList

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSArrowParameterList -> m JSArrowParameterList

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSArrowParameterList -> m JSArrowParameterList

Show JSArrowParameterList Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSArrowParameterList -> ShowS

show :: JSArrowParameterList -> String

showList :: [JSArrowParameterList] -> ShowS

Eq JSArrowParameterList Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

data JSTemplatePart Source #

Constructors

JSTemplatePart !JSExpression !JSAnnot !String

expr, rb, suffix

Instances

Instances details
Data JSTemplatePart Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSTemplatePart -> c JSTemplatePart

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JSTemplatePart

toConstr :: JSTemplatePart -> Constr

dataTypeOf :: JSTemplatePart -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JSTemplatePart)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JSTemplatePart)

gmapT :: (forall b. Data b => b -> b) -> JSTemplatePart -> JSTemplatePart

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSTemplatePart -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSTemplatePart -> r

gmapQ :: (forall d. Data d => d -> u) -> JSTemplatePart -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSTemplatePart -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSTemplatePart -> m JSTemplatePart

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSTemplatePart -> m JSTemplatePart

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSTemplatePart -> m JSTemplatePart

Show JSTemplatePart Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSTemplatePart -> ShowS

show :: JSTemplatePart -> String

showList :: [JSTemplatePart] -> ShowS

Eq JSTemplatePart Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

data JSClassHeritage Source #

Instances

Instances details
Data JSClassHeritage Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSClassHeritage -> c JSClassHeritage

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JSClassHeritage

toConstr :: JSClassHeritage -> Constr

dataTypeOf :: JSClassHeritage -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JSClassHeritage)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JSClassHeritage)

gmapT :: (forall b. Data b => b -> b) -> JSClassHeritage -> JSClassHeritage

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSClassHeritage -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSClassHeritage -> r

gmapQ :: (forall d. Data d => d -> u) -> JSClassHeritage -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSClassHeritage -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSClassHeritage -> m JSClassHeritage

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSClassHeritage -> m JSClassHeritage

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSClassHeritage -> m JSClassHeritage

Show JSClassHeritage Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSClassHeritage -> ShowS

show :: JSClassHeritage -> String

showList :: [JSClassHeritage] -> ShowS

Eq JSClassHeritage Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

data JSClassElement Source #

Instances

Instances details
Data JSClassElement Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSClassElement -> c JSClassElement

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JSClassElement

toConstr :: JSClassElement -> Constr

dataTypeOf :: JSClassElement -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JSClassElement)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JSClassElement)

gmapT :: (forall b. Data b => b -> b) -> JSClassElement -> JSClassElement

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSClassElement -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSClassElement -> r

gmapQ :: (forall d. Data d => d -> u) -> JSClassElement -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSClassElement -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSClassElement -> m JSClassElement

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSClassElement -> m JSClassElement

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSClassElement -> m JSClassElement

Show JSClassElement Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSClassElement -> ShowS

show :: JSClassElement -> String

showList :: [JSClassElement] -> ShowS

Eq JSClassElement Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

data JSModuleItem Source #

Instances

Instances details
Data JSModuleItem Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSModuleItem -> c JSModuleItem

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JSModuleItem

toConstr :: JSModuleItem -> Constr

dataTypeOf :: JSModuleItem -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JSModuleItem)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JSModuleItem)

gmapT :: (forall b. Data b => b -> b) -> JSModuleItem -> JSModuleItem

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSModuleItem -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSModuleItem -> r

gmapQ :: (forall d. Data d => d -> u) -> JSModuleItem -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSModuleItem -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSModuleItem -> m JSModuleItem

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSModuleItem -> m JSModuleItem

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSModuleItem -> m JSModuleItem

Show JSModuleItem Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSModuleItem -> ShowS

show :: JSModuleItem -> String

showList :: [JSModuleItem] -> ShowS

Eq JSModuleItem Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

(==) :: JSModuleItem -> JSModuleItem -> Bool

(/=) :: JSModuleItem -> JSModuleItem -> Bool

data JSImportDeclaration Source #

Constructors

JSImportDeclaration !JSImportClause !JSFromClause !JSSemi

imports, module, semi

JSImportDeclarationBare !JSAnnot !String !JSSemi

module, module, semi

Instances

Instances details
Data JSImportDeclaration Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSImportDeclaration -> c JSImportDeclaration

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JSImportDeclaration

toConstr :: JSImportDeclaration -> Constr

dataTypeOf :: JSImportDeclaration -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JSImportDeclaration)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JSImportDeclaration)

gmapT :: (forall b. Data b => b -> b) -> JSImportDeclaration -> JSImportDeclaration

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSImportDeclaration -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSImportDeclaration -> r

gmapQ :: (forall d. Data d => d -> u) -> JSImportDeclaration -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSImportDeclaration -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSImportDeclaration -> m JSImportDeclaration

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSImportDeclaration -> m JSImportDeclaration

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSImportDeclaration -> m JSImportDeclaration

Show JSImportDeclaration Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSImportDeclaration -> ShowS

show :: JSImportDeclaration -> String

showList :: [JSImportDeclaration] -> ShowS

Eq JSImportDeclaration Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

data JSImportClause Source #

Instances

Instances details
Data JSImportClause Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSImportClause -> c JSImportClause

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JSImportClause

toConstr :: JSImportClause -> Constr

dataTypeOf :: JSImportClause -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JSImportClause)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JSImportClause)

gmapT :: (forall b. Data b => b -> b) -> JSImportClause -> JSImportClause

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSImportClause -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSImportClause -> r

gmapQ :: (forall d. Data d => d -> u) -> JSImportClause -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSImportClause -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSImportClause -> m JSImportClause

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSImportClause -> m JSImportClause

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSImportClause -> m JSImportClause

Show JSImportClause Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSImportClause -> ShowS

show :: JSImportClause -> String

showList :: [JSImportClause] -> ShowS

Eq JSImportClause Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

data JSFromClause Source #

Constructors

JSFromClause !JSAnnot !JSAnnot !String

from, string literal, string literal contents

Instances

Instances details
Data JSFromClause Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSFromClause -> c JSFromClause

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JSFromClause

toConstr :: JSFromClause -> Constr

dataTypeOf :: JSFromClause -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JSFromClause)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JSFromClause)

gmapT :: (forall b. Data b => b -> b) -> JSFromClause -> JSFromClause

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSFromClause -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSFromClause -> r

gmapQ :: (forall d. Data d => d -> u) -> JSFromClause -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSFromClause -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSFromClause -> m JSFromClause

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSFromClause -> m JSFromClause

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSFromClause -> m JSFromClause

Show JSFromClause Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSFromClause -> ShowS

show :: JSFromClause -> String

showList :: [JSFromClause] -> ShowS

Eq JSFromClause Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

(==) :: JSFromClause -> JSFromClause -> Bool

(/=) :: JSFromClause -> JSFromClause -> Bool

data JSImportNameSpace Source #

Import namespace, e.g. '* as whatever'

Constructors

JSImportNameSpace !JSBinOp !JSAnnot !JSIdent
  • , as, ident

Instances

Instances details
Data JSImportNameSpace Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSImportNameSpace -> c JSImportNameSpace

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JSImportNameSpace

toConstr :: JSImportNameSpace -> Constr

dataTypeOf :: JSImportNameSpace -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JSImportNameSpace)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JSImportNameSpace)

gmapT :: (forall b. Data b => b -> b) -> JSImportNameSpace -> JSImportNameSpace

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSImportNameSpace -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSImportNameSpace -> r

gmapQ :: (forall d. Data d => d -> u) -> JSImportNameSpace -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSImportNameSpace -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSImportNameSpace -> m JSImportNameSpace

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSImportNameSpace -> m JSImportNameSpace

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSImportNameSpace -> m JSImportNameSpace

Show JSImportNameSpace Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSImportNameSpace -> ShowS

show :: JSImportNameSpace -> String

showList :: [JSImportNameSpace] -> ShowS

Eq JSImportNameSpace Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

data JSImportsNamed Source #

Named imports, e.g. '{ foo, bar, baz as quux }'

Constructors

JSImportsNamed !JSAnnot !(JSCommaList JSImportSpecifier) !JSAnnot

lb, specifiers, rb

Instances

Instances details
Data JSImportsNamed Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSImportsNamed -> c JSImportsNamed

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JSImportsNamed

toConstr :: JSImportsNamed -> Constr

dataTypeOf :: JSImportsNamed -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JSImportsNamed)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JSImportsNamed)

gmapT :: (forall b. Data b => b -> b) -> JSImportsNamed -> JSImportsNamed

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSImportsNamed -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSImportsNamed -> r

gmapQ :: (forall d. Data d => d -> u) -> JSImportsNamed -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSImportsNamed -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSImportsNamed -> m JSImportsNamed

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSImportsNamed -> m JSImportsNamed

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSImportsNamed -> m JSImportsNamed

Show JSImportsNamed Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSImportsNamed -> ShowS

show :: JSImportsNamed -> String

showList :: [JSImportsNamed] -> ShowS

Eq JSImportsNamed Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

data JSImportSpecifier Source #

Note that this data type is separate from ExportSpecifier because the grammar is slightly different (e.g. in handling of reserved words).

Instances

Instances details
Data JSImportSpecifier Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSImportSpecifier -> c JSImportSpecifier

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JSImportSpecifier

toConstr :: JSImportSpecifier -> Constr

dataTypeOf :: JSImportSpecifier -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JSImportSpecifier)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JSImportSpecifier)

gmapT :: (forall b. Data b => b -> b) -> JSImportSpecifier -> JSImportSpecifier

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSImportSpecifier -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSImportSpecifier -> r

gmapQ :: (forall d. Data d => d -> u) -> JSImportSpecifier -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSImportSpecifier -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSImportSpecifier -> m JSImportSpecifier

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSImportSpecifier -> m JSImportSpecifier

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSImportSpecifier -> m JSImportSpecifier

Show JSImportSpecifier Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSImportSpecifier -> ShowS

show :: JSImportSpecifier -> String

showList :: [JSImportSpecifier] -> ShowS

Eq JSImportSpecifier Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

data JSExportDeclaration Source #

Constructors

JSExportFrom JSExportClause JSFromClause !JSSemi

exports, module, semi

JSExportLocals JSExportClause !JSSemi

exports, autosemi

JSExport !JSStatement !JSSemi

body, autosemi | JSExportDefault

Instances

Instances details
Data JSExportDeclaration Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSExportDeclaration -> c JSExportDeclaration

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JSExportDeclaration

toConstr :: JSExportDeclaration -> Constr

dataTypeOf :: JSExportDeclaration -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JSExportDeclaration)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JSExportDeclaration)

gmapT :: (forall b. Data b => b -> b) -> JSExportDeclaration -> JSExportDeclaration

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSExportDeclaration -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSExportDeclaration -> r

gmapQ :: (forall d. Data d => d -> u) -> JSExportDeclaration -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSExportDeclaration -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSExportDeclaration -> m JSExportDeclaration

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSExportDeclaration -> m JSExportDeclaration

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSExportDeclaration -> m JSExportDeclaration

Show JSExportDeclaration Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSExportDeclaration -> ShowS

show :: JSExportDeclaration -> String

showList :: [JSExportDeclaration] -> ShowS

Eq JSExportDeclaration Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

data JSExportClause Source #

Constructors

JSExportClause !JSAnnot !(JSCommaList JSExportSpecifier) !JSAnnot

lb, specifiers, rb

Instances

Instances details
Data JSExportClause Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSExportClause -> c JSExportClause

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JSExportClause

toConstr :: JSExportClause -> Constr

dataTypeOf :: JSExportClause -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JSExportClause)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JSExportClause)

gmapT :: (forall b. Data b => b -> b) -> JSExportClause -> JSExportClause

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSExportClause -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSExportClause -> r

gmapQ :: (forall d. Data d => d -> u) -> JSExportClause -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSExportClause -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSExportClause -> m JSExportClause

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSExportClause -> m JSExportClause

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSExportClause -> m JSExportClause

Show JSExportClause Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSExportClause -> ShowS

show :: JSExportClause -> String

showList :: [JSExportClause] -> ShowS

Eq JSExportClause Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

data JSExportSpecifier Source #

Constructors

JSExportSpecifier !JSIdent

ident

JSExportSpecifierAs !JSIdent !JSAnnot !JSIdent

ident1, as, ident2

Instances

Instances details
Data JSExportSpecifier Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> JSExportSpecifier -> c JSExportSpecifier

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c JSExportSpecifier

toConstr :: JSExportSpecifier -> Constr

dataTypeOf :: JSExportSpecifier -> DataType

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c JSExportSpecifier)

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c JSExportSpecifier)

gmapT :: (forall b. Data b => b -> b) -> JSExportSpecifier -> JSExportSpecifier

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> JSExportSpecifier -> r

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> JSExportSpecifier -> r

gmapQ :: (forall d. Data d => d -> u) -> JSExportSpecifier -> [u]

gmapQi :: Int -> (forall d. Data d => d -> u) -> JSExportSpecifier -> u

gmapM :: Monad m => (forall d. Data d => d -> m d) -> JSExportSpecifier -> m JSExportSpecifier

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> JSExportSpecifier -> m JSExportSpecifier

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> JSExportSpecifier -> m JSExportSpecifier

Show JSExportSpecifier Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

Methods

showsPrec :: Int -> JSExportSpecifier -> ShowS

show :: JSExportSpecifier -> String

showList :: [JSExportSpecifier] -> ShowS

Eq JSExportSpecifier Source # 
Instance details

Defined in Language.JavaScript.Parser.AST

showStripped :: JSAST -> String Source #

Show the AST elements stripped of their JSAnnot data.