idris-1.3.4: Functional Programming Language with Dependent Types

License | BSD3
Maintainer | The Idris Community.
Safe Haskell | Safe-Inferred
Language | Haskell2010

IRTS.Lang

Description

# Documentation

data Endianness #

Constructors

Native |
BE |
LE |

#### Instances

Instances details

Show Endianness # |
Instance details Defined in IRTS.Lang Methods showsPrec :: Int -> Endianness -> ShowS show :: Endianness -> String showList :: [Endianness] -> ShowS
Eq Endianness # |
Instance details Defined in IRTS.Lang Methods (==) :: Endianness -> Endianness -> Bool (/=) :: Endianness -> Endianness -> Bool

data LVar #

Constructors

Loc Int |
Glob Name |

#### Instances

Instances details

ToJSON LVar # |
Instance details Defined in IRTS.Portable Methods toJSON :: LVar -> Value # toEncoding :: LVar -> Encoding # toJSONList :: [LVar] -> Value # toEncodingList :: [LVar] -> Encoding # omitField :: LVar -> Bool #
Data LVar |
Instance details Defined in IRTS.JavaScript.LangTransforms Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> LVar -> c LVar gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c LVar toConstr :: LVar -> Constr dataTypeOf :: LVar -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c LVar) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c LVar) gmapT :: (forall b. Data b => b -> b) -> LVar -> LVar gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> LVar -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> LVar -> r gmapQ :: (forall d. Data d => d -> u) -> LVar -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> LVar -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> LVar -> m LVar gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> LVar -> m LVar gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> LVar -> m LVar
Show LVar # |
Instance details Defined in IRTS.Lang Methods showsPrec :: Int -> LVar -> ShowS show :: LVar -> String showList :: [LVar] -> ShowS
Eq LVar # |
Instance details Defined in IRTS.Lang Methods (==) :: LVar -> LVar -> Bool (/=) :: LVar -> LVar -> Bool

data LExp #

Constructors

LV Name |
LApp Bool LExp [LExp] |
LLazyApp Name [LExp] |
LLazyExp LExp |
LForce LExp |
LLet Name LExp LExp |
LLam [Name] LExp |
LProj LExp Int |
LCon (Maybe Name) Int Name [LExp] |
LCase CaseType LExp [LAlt] |
LConst Const |
LForeign FDesc FDesc [(FDesc, LExp)] |
LOp PrimFn [LExp] |
LNothing |
LError String |

#### Instances

Instances details

ToJSON LAlt # |
Instance details Defined in IRTS.Portable Methods toJSON :: LAlt -> Value # toEncoding :: LAlt -> Encoding # toJSONList :: [LAlt] -> Value # toEncodingList :: [LAlt] -> Encoding # omitField :: LAlt -> Bool #
ToJSON LExp # |
Instance details Defined in IRTS.Portable Methods toJSON :: LExp -> Value # toEncoding :: LExp -> Encoding # toJSONList :: [LExp] -> Value # toEncodingList :: [LExp] -> Encoding # omitField :: LExp -> Bool #
Data LExp |
Instance details Defined in IRTS.JavaScript.LangTransforms Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> LExp -> c LExp gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c LExp toConstr :: LExp -> Constr dataTypeOf :: LExp -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c LExp) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c LExp) gmapT :: (forall b. Data b => b -> b) -> LExp -> LExp gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> LExp -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> LExp -> r gmapQ :: (forall d. Data d => d -> u) -> LExp -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> LExp -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> LExp -> m LExp gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> LExp -> m LExp gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> LExp -> m LExp
Show LExp # |
Instance details Defined in IRTS.Lang Methods showsPrec :: Int -> LExp -> ShowS show :: LExp -> String showList :: [LExp] -> ShowS
Eq LExp # |
Instance details Defined in IRTS.Lang Methods (==) :: LExp -> LExp -> Bool (/=) :: LExp -> LExp -> Bool
Ord LExp # |
Instance details Defined in IRTS.Lang Methods compare :: LExp -> LExp -> Ordering (<) :: LExp -> LExp -> Bool (<=) :: LExp -> LExp -> Bool (>) :: LExp -> LExp -> Bool (>=) :: LExp -> LExp -> Bool max :: LExp -> LExp -> LExp min :: LExp -> LExp -> LExp

data FDesc #

Constructors

FCon Name |
FStr String |
FUnknown |
FIO FDesc |
FApp Name [FDesc] |

#### Instances

Instances details

ToJSON FDesc # |
Instance details Defined in IRTS.Portable Methods toJSON :: FDesc -> Value # toEncoding :: FDesc -> Encoding # toJSONList :: [FDesc] -> Value # toEncodingList :: [FDesc] -> Encoding # omitField :: FDesc -> Bool #
Data FDesc |
Instance details Defined in IRTS.JavaScript.LangTransforms Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> FDesc -> c FDesc gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c FDesc toConstr :: FDesc -> Constr dataTypeOf :: FDesc -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c FDesc) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c FDesc) gmapT :: (forall b. Data b => b -> b) -> FDesc -> FDesc gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> FDesc -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> FDesc -> r gmapQ :: (forall d. Data d => d -> u) -> FDesc -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> FDesc -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> FDesc -> m FDesc gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> FDesc -> m FDesc gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> FDesc -> m FDesc
Show FDesc # |
Instance details Defined in IRTS.Lang Methods showsPrec :: Int -> FDesc -> ShowS show :: FDesc -> String showList :: [FDesc] -> ShowS
Eq FDesc # |
Instance details Defined in IRTS.Lang Methods (==) :: FDesc -> FDesc -> Bool (/=) :: FDesc -> FDesc -> Bool
Ord FDesc # |
Instance details Defined in IRTS.Lang Methods compare :: FDesc -> FDesc -> Ordering (<) :: FDesc -> FDesc -> Bool (<=) :: FDesc -> FDesc -> Bool (>) :: FDesc -> FDesc -> Bool (>=) :: FDesc -> FDesc -> Bool max :: FDesc -> FDesc -> FDesc min :: FDesc -> FDesc -> FDesc

data Export #

Constructors

ExportData FDesc |
ExportFun Name FDesc FDesc [FDesc] |

#### Instances

Instances details

ToJSON Export # |
Instance details Defined in IRTS.Portable Methods toJSON :: Export -> Value # toEncoding :: Export -> Encoding # toJSONList :: [Export] -> Value # toEncodingList :: [Export] -> Encoding # omitField :: Export -> Bool #
Show Export # |
Instance details Defined in IRTS.Lang Methods showsPrec :: Int -> Export -> ShowS show :: Export -> String showList :: [Export] -> ShowS
Eq Export # |
Instance details Defined in IRTS.Lang Methods (==) :: Export -> Export -> Bool (/=) :: Export -> Export -> Bool
Ord Export # |
Instance details Defined in IRTS.Lang Methods compare :: Export -> Export -> Ordering (<) :: Export -> Export -> Bool (<=) :: Export -> Export -> Bool (>) :: Export -> Export -> Bool (>=) :: Export -> Export -> Bool max :: Export -> Export -> Export min :: Export -> Export -> Export

data ExportIFace #

Constructors

Export Name String [Export] |

#### Instances

Instances details

ToJSON ExportIFace # |
Instance details Defined in IRTS.Portable Methods toJSON :: ExportIFace -> Value # toEncoding :: ExportIFace -> Encoding # toJSONList :: [ExportIFace] -> Value # toEncodingList :: [ExportIFace] -> Encoding # omitField :: ExportIFace -> Bool #
Show ExportIFace # |
Instance details Defined in IRTS.Lang Methods showsPrec :: Int -> ExportIFace -> ShowS show :: ExportIFace -> String showList :: [ExportIFace] -> ShowS
Eq ExportIFace # |
Instance details Defined in IRTS.Lang Methods (==) :: ExportIFace -> ExportIFace -> Bool (/=) :: ExportIFace -> ExportIFace -> Bool
Ord ExportIFace # |
Instance details Defined in IRTS.Lang Methods compare :: ExportIFace -> ExportIFace -> Ordering (<) :: ExportIFace -> ExportIFace -> Bool (<=) :: ExportIFace -> ExportIFace -> Bool (>) :: ExportIFace -> ExportIFace -> Bool (>=) :: ExportIFace -> ExportIFace -> Bool max :: ExportIFace -> ExportIFace -> ExportIFace min :: ExportIFace -> ExportIFace -> ExportIFace

data PrimFn #

Constructors

LPlus ArithTy |
LMinus ArithTy |
LTimes ArithTy |
LUDiv IntTy |
LSDiv ArithTy |
LURem IntTy |
LSRem ArithTy |
LAnd IntTy |
LOr IntTy |
LXOr IntTy |
LCompl IntTy |
LSHL IntTy |
LLSHR IntTy |
LASHR IntTy |
LEq ArithTy |
LLt IntTy |
LLe IntTy |
LGt IntTy |
LGe IntTy |
LSLt ArithTy |
LSLe ArithTy |
LSGt ArithTy |
LSGe ArithTy |
LSExt IntTy IntTy |
LZExt IntTy IntTy |
LTrunc IntTy IntTy |
LStrConcat |
LStrLt |
LStrEq |
LStrLen |
LIntFloat IntTy |
LFloatInt IntTy |
LIntStr IntTy |
LStrInt IntTy |
LFloatStr |
LStrFloat |
LChInt IntTy |
LIntCh IntTy |
LBitCast ArithTy ArithTy |
LFExp |
LFLog |
LFSin |
LFCos |
LFTan |
LFASin |
LFACos |
LFATan |
LFATan2 |
LFSqrt |
LFFloor |
LFCeil |
LFNegate |
LStrHead |
LStrTail |
LStrCons |
LStrIndex |
LStrRev |
LStrSubstr |
LReadStr |
LWriteStr |
LSystemInfo |
LFork |
LPar |
LExternal Name |
LCrash |
LNoOp |

#### Instances

Instances details

ToJSON PrimFn # |
Instance details Defined in IRTS.Portable Methods toJSON :: PrimFn -> Value # toEncoding :: PrimFn -> Encoding # toJSONList :: [PrimFn] -> Value # toEncodingList :: [PrimFn] -> Encoding # omitField :: PrimFn -> Bool #
Data PrimFn |
Instance details Defined in IRTS.JavaScript.LangTransforms Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> PrimFn -> c PrimFn gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c PrimFn toConstr :: PrimFn -> Constr dataTypeOf :: PrimFn -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c PrimFn) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c PrimFn) gmapT :: (forall b. Data b => b -> b) -> PrimFn -> PrimFn gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> PrimFn -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> PrimFn -> r gmapQ :: (forall d. Data d => d -> u) -> PrimFn -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> PrimFn -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> PrimFn -> m PrimFn gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> PrimFn -> m PrimFn gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> PrimFn -> m PrimFn
Generic PrimFn # |
Instance details Defined in IRTS.Lang Associated Types type Rep PrimFn :: Type -> Type Methods from :: PrimFn -> Rep PrimFn x to :: Rep PrimFn x -> PrimFn
Show PrimFn # |
Instance details Defined in IRTS.Lang Methods showsPrec :: Int -> PrimFn -> ShowS show :: PrimFn -> String showList :: [PrimFn] -> ShowS
NFData PrimFn |
Instance details Defined in Idris.DeepSeq Methods rnf :: PrimFn -> ()
Eq PrimFn # |
Instance details Defined in IRTS.Lang Methods (==) :: PrimFn -> PrimFn -> Bool (/=) :: PrimFn -> PrimFn -> Bool
Ord PrimFn # |
Instance details Defined in IRTS.Lang Methods compare :: PrimFn -> PrimFn -> Ordering (<) :: PrimFn -> PrimFn -> Bool (<=) :: PrimFn -> PrimFn -> Bool (>) :: PrimFn -> PrimFn -> Bool (>=) :: PrimFn -> PrimFn -> Bool max :: PrimFn -> PrimFn -> PrimFn min :: PrimFn -> PrimFn -> PrimFn
type Rep PrimFn # |
Instance details Defined in IRTS.Lang type Rep PrimFn = D1 ('MetaData "PrimFn" "IRTS.Lang" "idris-1.3.4-BlNNV9hBERVKY9AdbdQobo" 'False) ((((((C1 ('MetaCons "LPlus" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ArithTy)) :+: C1 ('MetaCons "LMinus" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ArithTy))) :+: (C1 ('MetaCons "LTimes" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ArithTy)) :+: C1 ('MetaCons "LUDiv" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 IntTy)))) :+: ((C1 ('MetaCons "LSDiv" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ArithTy)) :+: C1 ('MetaCons "LURem" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 IntTy))) :+: (C1 ('MetaCons "LSRem" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ArithTy)) :+: C1 ('MetaCons "LAnd" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 IntTy))))) :+: (((C1 ('MetaCons "LOr" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 IntTy)) :+: C1 ('MetaCons "LXOr" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 IntTy))) :+: (C1 ('MetaCons "LCompl" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 IntTy)) :+: C1 ('MetaCons "LSHL" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 IntTy)))) :+: ((C1 ('MetaCons "LLSHR" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 IntTy)) :+: C1 ('MetaCons "LASHR" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 IntTy))) :+: (C1 ('MetaCons "LEq" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ArithTy)) :+: C1 ('MetaCons "LLt" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 IntTy)))))) :+: ((((C1 ('MetaCons "LLe" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 IntTy)) :+: C1 ('MetaCons "LGt" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 IntTy))) :+: (C1 ('MetaCons "LGe" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 IntTy)) :+: C1 ('MetaCons "LSLt" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ArithTy)))) :+: ((C1 ('MetaCons "LSLe" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ArithTy)) :+: C1 ('MetaCons "LSGt" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ArithTy))) :+: (C1 ('MetaCons "LSGe" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ArithTy)) :+: C1 ('MetaCons "LSExt" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 IntTy) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 IntTy))))) :+: (((C1 ('MetaCons "LZExt" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 IntTy) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 IntTy)) :+: C1 ('MetaCons "LTrunc" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 IntTy) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 IntTy))) :+: (C1 ('MetaCons "LStrConcat" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "LStrLt" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "LStrEq" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "LStrLen" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "LIntFloat" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 IntTy)) :+: (C1 ('MetaCons "LFloatInt" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 IntTy)) :+: C1 ('MetaCons "LIntStr" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 IntTy)))))))) :+: (((((C1 ('MetaCons "LStrInt" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 IntTy)) :+: C1 ('MetaCons "LFloatStr" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "LStrFloat" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "LChInt" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 IntTy)))) :+: ((C1 ('MetaCons "LIntCh" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 IntTy)) :+: C1 ('MetaCons "LBitCast" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ArithTy) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ArithTy))) :+: (C1 ('MetaCons "LFExp" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "LFLog" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: (((C1 ('MetaCons "LFSin" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "LFCos" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "LFTan" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "LFASin" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "LFACos" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "LFATan" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "LFATan2" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "LFSqrt" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: ((((C1 ('MetaCons "LFFloor" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "LFCeil" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "LFNegate" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "LStrHead" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "LStrTail" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "LStrCons" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "LStrIndex" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "LStrRev" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: (((C1 ('MetaCons "LStrSubstr" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "LReadStr" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "LWriteStr" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "LSystemInfo" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "LFork" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "LPar" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "LExternal" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Name)) :+: (C1 ('MetaCons "LCrash" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "LNoOp" 'PrefixI 'False) (U1 :: Type -> Type))))))))

data FCallType #

Constructors

FStatic |
FObject |
FConstructor |

#### Instances

Instances details

Show FCallType # |
Instance details Defined in IRTS.Lang Methods showsPrec :: Int -> FCallType -> ShowS show :: FCallType -> String showList :: [FCallType] -> ShowS
Eq FCallType # |
Instance details Defined in IRTS.Lang Methods (==) :: FCallType -> FCallType -> Bool (/=) :: FCallType -> FCallType -> Bool
Ord FCallType # |
Instance details Defined in IRTS.Lang Methods compare :: FCallType -> FCallType -> Ordering (<) :: FCallType -> FCallType -> Bool (<=) :: FCallType -> FCallType -> Bool (>) :: FCallType -> FCallType -> Bool (>=) :: FCallType -> FCallType -> Bool max :: FCallType -> FCallType -> FCallType min :: FCallType -> FCallType -> FCallType

data FType #

Constructors

FArith ArithTy |
FFunction |
FFunctionIO |
FString |
FUnit |
FPtr |
FManagedPtr |
FCData |
FAny |

#### Instances

Instances details

Show FType # |
Instance details Defined in IRTS.Lang Methods showsPrec :: Int -> FType -> ShowS show :: FType -> String showList :: [FType] -> ShowS
Eq FType # |
Instance details Defined in IRTS.Lang Methods (==) :: FType -> FType -> Bool (/=) :: FType -> FType -> Bool
Ord FType # |
Instance details Defined in IRTS.Lang Methods compare :: FType -> FType -> Ordering (<) :: FType -> FType -> Bool (<=) :: FType -> FType -> Bool (>) :: FType -> FType -> Bool (>=) :: FType -> FType -> Bool max :: FType -> FType -> FType min :: FType -> FType -> FType

data LAlt' e #

Constructors

LConCase Int Name [Name] e |
LConstCase Const e |
LDefaultCase e |

#### Instances

Instances details

ToJSON LAlt # |
Instance details Defined in IRTS.Portable Methods toJSON :: LAlt -> Value # toEncoding :: LAlt -> Encoding # toJSONList :: [LAlt] -> Value # toEncodingList :: [LAlt] -> Encoding # omitField :: LAlt -> Bool #
Functor LAlt' # |
Instance details Defined in IRTS.Lang Methods fmap :: (a -> b) -> LAlt' a -> LAlt' b # (<$) :: a -> LAlt' b -> LAlt' a #
Data e => Data (LAlt' e) # |
Instance details Defined in IRTS.Lang Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> LAlt' e -> c (LAlt' e) gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (LAlt' e) toConstr :: LAlt' e -> Constr dataTypeOf :: LAlt' e -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (LAlt' e)) dataCast2 :: Typeable t => (forall d e0. (Data d, Data e0) => c (t d e0)) -> Maybe (c (LAlt' e)) gmapT :: (forall b. Data b => b -> b) -> LAlt' e -> LAlt' e gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> LAlt' e -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> LAlt' e -> r gmapQ :: (forall d. Data d => d -> u) -> LAlt' e -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> LAlt' e -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> LAlt' e -> m (LAlt' e) gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> LAlt' e -> m (LAlt' e) gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> LAlt' e -> m (LAlt' e)
Show e => Show (LAlt' e) # |
Instance details Defined in IRTS.Lang Methods showsPrec :: Int -> LAlt' e -> ShowS show :: LAlt' e -> String showList :: [LAlt' e] -> ShowS
Eq e => Eq (LAlt' e) # |
Instance details Defined in IRTS.Lang Methods (==) :: LAlt' e -> LAlt' e -> Bool (/=) :: LAlt' e -> LAlt' e -> Bool
Ord e => Ord (LAlt' e) # |
Instance details Defined in IRTS.Lang Methods compare :: LAlt' e -> LAlt' e -> Ordering (<) :: LAlt' e -> LAlt' e -> Bool (<=) :: LAlt' e -> LAlt' e -> Bool (>) :: LAlt' e -> LAlt' e -> Bool (>=) :: LAlt' e -> LAlt' e -> Bool max :: LAlt' e -> LAlt' e -> LAlt' e min :: LAlt' e -> LAlt' e -> LAlt' e

type LAlt = LAlt' LExp #

data LDecl #

Constructors

LFun [LOpt] Name [Name] LExp |
LConstructor Name Int Int |

#### Instances

Instances details

ToJSON LDecl # |
Instance details Defined in IRTS.Portable Methods toJSON :: LDecl -> Value # toEncoding :: LDecl -> Encoding # toJSONList :: [LDecl] -> Value # toEncodingList :: [LDecl] -> Encoding # omitField :: LDecl -> Bool #
Data LDecl |
Instance details Defined in IRTS.JavaScript.LangTransforms Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> LDecl -> c LDecl gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c LDecl toConstr :: LDecl -> Constr dataTypeOf :: LDecl -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c LDecl) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c LDecl) gmapT :: (forall b. Data b => b -> b) -> LDecl -> LDecl gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> LDecl -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> LDecl -> r gmapQ :: (forall d. Data d => d -> u) -> LDecl -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> LDecl -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> LDecl -> m LDecl gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> LDecl -> m LDecl gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> LDecl -> m LDecl
Show LDecl # |
Instance details Defined in IRTS.Lang Methods showsPrec :: Int -> LDecl -> ShowS show :: LDecl -> String showList :: [LDecl] -> ShowS
Eq LDecl # |
Instance details Defined in IRTS.Lang Methods (==) :: LDecl -> LDecl -> Bool (/=) :: LDecl -> LDecl -> Bool
Ord LDecl # |
Instance details Defined in IRTS.Lang Methods compare :: LDecl -> LDecl -> Ordering (<) :: LDecl -> LDecl -> Bool (<=) :: LDecl -> LDecl -> Bool (>) :: LDecl -> LDecl -> Bool (>=) :: LDecl -> LDecl -> Bool max :: LDecl -> LDecl -> LDecl min :: LDecl -> LDecl -> LDecl

type LDefs = Ctxt LDecl #

data LOpt #

Constructors

Inline |
NoInline |

#### Instances

Instances details

ToJSON LOpt # |
Instance details Defined in IRTS.Portable Methods toJSON :: LOpt -> Value # toEncoding :: LOpt -> Encoding # toJSONList :: [LOpt] -> Value # toEncodingList :: [LOpt] -> Encoding # omitField :: LOpt -> Bool #
Data LOpt |
Instance details Defined in IRTS.JavaScript.LangTransforms Methods gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> LOpt -> c LOpt gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c LOpt toConstr :: LOpt -> Constr dataTypeOf :: LOpt -> DataType dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c LOpt) dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c LOpt) gmapT :: (forall b. Data b => b -> b) -> LOpt -> LOpt gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> LOpt -> r gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> LOpt -> r gmapQ :: (forall d. Data d => d -> u) -> LOpt -> [u] gmapQi :: Int -> (forall d. Data d => d -> u) -> LOpt -> u gmapM :: Monad m => (forall d. Data d => d -> m d) -> LOpt -> m LOpt gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> LOpt -> m LOpt gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> LOpt -> m LOpt
Show LOpt # |
Instance details Defined in IRTS.Lang Methods showsPrec :: Int -> LOpt -> ShowS show :: LOpt -> String showList :: [LOpt] -> ShowS
Eq LOpt # |
Instance details Defined in IRTS.Lang Methods (==) :: LOpt -> LOpt -> Bool (/=) :: LOpt -> LOpt -> Bool
Ord LOpt # |
Instance details Defined in IRTS.Lang Methods compare :: LOpt -> LOpt -> Ordering (<) :: LOpt -> LOpt -> Bool (<=) :: LOpt -> LOpt -> Bool (>) :: LOpt -> LOpt -> Bool (>=) :: LOpt -> LOpt -> Bool max :: LOpt -> LOpt -> LOpt min :: LOpt -> LOpt -> LOpt

addTags :: Int -> [(Name, LDecl)] -> (Int, [(Name, LDecl)]) #

data LiftState #

Constructors

LS (Maybe Name) Int [(Name, LDecl)] (Map ([Name], LExp) Name) |

setBaseName :: Name -> State LiftState () #

lname :: Name -> Int -> Name #

getNextName :: State LiftState Name #

renameArgs :: [Name] -> LExp -> ([Name], LExp) #

addFn :: Name -> LDecl -> State LiftState () #

makeFn :: [Name] -> LExp -> State LiftState Name #

liftAll :: [(Name, LDecl)] -> [(Name, LDecl)] #

liftDef :: (Name, LDecl) -> State LiftState () #

lift :: [Name] -> LExp -> State LiftState LExp #

allocUnique :: LDefs -> (Name, LDecl) -> (Name, LDecl) #

usedArg :: (Foldable t, Eq a) => t a -> a -> [a] #

usedIn :: [Name] -> LExp -> [Name] #

lsubst :: Name -> LExp -> LExp -> LExp #

rename :: [(Name, Name)] -> LExp -> LExp #

occName :: Name -> LExp -> Int #