| Safe Haskell | Safe-Infered |
|---|
BrownPLT.JavaScript.Syntax
Description
JavaScript's syntax.
Documentation
data Expression a Source
Constructors
| StringLit a String | |
| RegexpLit a String Bool Bool | |
| NumLit a Double | |
| IntLit a Int | |
| BoolLit a Bool | |
| NullLit a | |
| ArrayLit a [Expression a] | |
| ObjectLit a [(Prop a, Expression a)] | |
| ThisRef a | |
| VarRef a (Id a) | |
| DotRef a (Expression a) (Id a) | |
| BracketRef a (Expression a) (Expression a) | |
| NewExpr a (Expression a) [Expression a] | |
| PrefixExpr a PrefixOp (Expression a) | |
| UnaryAssignExpr a UnaryAssignOp (LValue a) | |
| InfixExpr a InfixOp (Expression a) (Expression a) | |
| CondExpr a (Expression a) (Expression a) (Expression a) | |
| AssignExpr a AssignOp (LValue a) (Expression a) | |
| ParenExpr a (Expression a) | |
| ListExpr a [Expression a] | |
| CallExpr a (Expression a) [Expression a] | |
| FuncExpr a (Maybe (Id a)) [Id a] (Statement a) |
Instances
| Typeable1 Expression | |
| Eq a => Eq (Expression a) | |
| Data a => Data (Expression a) | |
| Ord a => Ord (Expression a) | |
| Show a => Show (Expression a) |
data CaseClause a Source
Constructors
| CaseClause a (Expression a) [Statement a] | |
| CaseDefault a [Statement a] |
Instances
| Typeable1 CaseClause | |
| Eq a => Eq (CaseClause a) | |
| Data a => Data (CaseClause a) | |
| Ord a => Ord (CaseClause a) | |
| Show a => Show (CaseClause a) |
Constructors
| BlockStmt a [Statement a] | |
| EmptyStmt a | |
| ExprStmt a (Expression a) | |
| IfStmt a (Expression a) (Statement a) (Statement a) | |
| IfSingleStmt a (Expression a) (Statement a) | |
| SwitchStmt a (Expression a) [CaseClause a] | |
| WhileStmt a (Expression a) (Statement a) | |
| DoWhileStmt a (Statement a) (Expression a) | |
| BreakStmt a (Maybe (Id a)) | |
| ContinueStmt a (Maybe (Id a)) | |
| LabelledStmt a (Id a) (Statement a) | |
| ForInStmt a (ForInInit a) (Expression a) (Statement a) | |
| ForStmt a (ForInit a) (Maybe (Expression a)) (Maybe (Expression a)) (Statement a) | |
| TryStmt a (Statement a) (Maybe (CatchClause a)) (Maybe (Statement a)) | |
| ThrowStmt a (Expression a) | |
| ReturnStmt a (Maybe (Expression a)) | |
| WithStmt a (Expression a) (Statement a) | |
| VarDeclStmt a [VarDecl a] | |
| FunctionStmt a (Id a) [Id a] (Statement a) |
data CatchClause a Source
Constructors
| CatchClause a (Id a) (Statement a) |
Instances
| Typeable1 CatchClause | |
| Eq a => Eq (CatchClause a) | |
| Data a => Data (CatchClause a) | |
| Ord a => Ord (CatchClause a) | |
| Show a => Show (CatchClause a) |
Constructors
| VarDecl a (Id a) (Maybe (Expression a)) |
data JavaScript a Source
Constructors
| Script a [Statement a] | A script in script ... /script tags. This may seem a little silly, but the Flapjax analogue has an inline variant and attribute-inline variant. |
Instances
| Typeable1 JavaScript | |
| Eq a => Eq (JavaScript a) | |
| Data a => Data (JavaScript a) | |
| Ord a => Ord (JavaScript a) | |
| Show a => Show (JavaScript a) |
Constructors
| NoInit | |
| VarInit [VarDecl a] | |
| ExprInit (Expression a) |
Constructors
| ForInVar (Id a) | |
| ForInNoVar (Id a) |
data UnaryAssignOp Source
Constructors
| PrefixInc | |
| PrefixDec | |
| PostfixInc | |
| PostfixDec |