idris-1.0: Functional Programming Language with Dependent Types

Copyright | License : BSD3
Maintainer | The Idris Community.
Safe Haskell | None
Language | Haskell98

IRTS.JavaScript.AST

Description

# Documentation

data JSType #

Constructors

JSIntTy |
JSStringTy |
JSIntegerTy |
JSFloatTy |
JSCharTy |
JSPtrTy |
JSForgotTy |

Instances

Eq JSType # |
Methods (==) :: JSType -> JSType -> Bool # (/=) :: JSType -> JSType -> Bool #

data JSInteger #

Constructors

JSBigZero |
JSBigOne |
JSBigInt Integer |
JSBigIntExpr JS |

Instances

Eq JSInteger # |
Methods (==) :: JSInteger -> JSInteger -> Bool # (/=) :: JSInteger -> JSInteger -> Bool #

data JSNum #

Constructors

JSInt Int |
JSFloat Double |
JSInteger JSInteger |

Instances

Eq JSNum # |
Methods (==) :: JSNum -> JSNum -> Bool # (/=) :: JSNum -> JSNum -> Bool #

data JSWord #

Constructors

JSWord8 Word8 |
JSWord16 Word16 |
JSWord32 Word32 |
JSWord64 Word64 |

Instances

Eq JSWord # |
Methods (==) :: JSWord -> JSWord -> Bool # (/=) :: JSWord -> JSWord -> Bool #

data JSAnnotation #

Constructors

JSConstructor |

Instances

Eq JSAnnotation # |
Methods (==) :: JSAnnotation -> JSAnnotation -> Bool # (/=) :: JSAnnotation -> JSAnnotation -> Bool #
Show JSAnnotation # |
Methods showsPrec :: Int -> JSAnnotation -> ShowS # show :: JSAnnotation -> String # showList :: [JSAnnotation] -> ShowS #

data JS #

Constructors

JSRaw String |
JSIdent String |
JSFunction [String] JS |
JSType JSType |
JSSeq [JS] |
JSReturn JS |
JSApp JS [JS] |
JSNew String [JS] |
JSError String |
JSBinOp String JS JS |
JSPreOp String JS |
JSPostOp String JS |
JSProj JS String |
JSNull |
JSUndefined |
JSThis |
JSTrue |
JSFalse |
JSArray [JS] |
JSString String |
JSNum JSNum |
JSWord JSWord |
JSAssign JS JS |
JSAlloc String (Maybe JS) |
JSIndex JS JS |
JSSwitch JS [(JS, JS)] (Maybe JS) |
JSCond [(JS, JS)] |
JSTernary JS JS JS |
JSParens JS |
JSWhile JS JS |
JSFFI String [JS] |
JSAnnotation JSAnnotation JS |
JSDelete JS |
JSClear JS |
JSNoop |

Instances

Eq JS # |
Methods (==) :: JS -> JS -> Bool # (/=) :: JS -> JS -> Bool #

data FFI #

Constructors

FFICode Char |
FFIArg Int |
FFIError String |

ffi :: String -> [String] -> Text #

compileJS :: JS -> Text #

compileJS' :: Int -> JS -> Text #

jsInstanceOf :: JS -> String -> JS #

jsOr :: JS -> JS -> JS #

jsAnd :: JS -> JS -> JS #

jsMeth :: JS -> String -> [JS] -> JS #

jsCall :: String -> [JS] -> JS #

jsTypeOf :: JS -> JS #

jsEq :: JS -> JS -> JS #

jsNotEq :: JS -> JS -> JS #

jsIsNumber :: JS -> JS #

jsIsNull :: JS -> JS #

jsBigInt :: JS -> JS #

jsUnPackBits :: JS -> JS #

jsPackUBits8 :: JS -> JS #

jsPackUBits16 :: JS -> JS #

jsPackUBits32 :: JS -> JS #

jsPackSBits8 :: JS -> JS #

jsPackSBits16 :: JS -> JS #

jsPackSBits32 :: JS -> JS #