Idris.IBC

idris-1.3.4: Functional Programming Language with Dependent Types

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

Idris.IBC

Contents

- Orphan instances

Description

Synopsis

- loadIBC :: Bool -> IBCPhase -> FilePath -> Idris ()
- loadPkgIndex :: PkgName -> Idris ()
- writeIBC :: FilePath -> FilePath -> Idris ()
- writePkgIndex :: FilePath -> Idris ()
- hasValidIBCVersion :: FilePath -> Idris Bool
- data IBCPhase
  - = IBC_Building
  - | IBC_REPL Bool
- getIBCHash :: FilePath -> Idris Int
- getImportHashes :: FilePath -> Idris [(FilePath, Int)]

# Documentation

loadIBC #

Arguments

:: Bool | True = reexport, False = make everything private
-> IBCPhase |
-> FilePath |
-> Idris () |

loadPkgIndex :: PkgName -> Idris () #

Load an entire package from its index file

writeIBC :: FilePath -> FilePath -> Idris () #

writePkgIndex :: FilePath -> Idris () #

Write a package index containing all the imports in the current IState Used for ':search' of an entire package, to ensure everything is loaded.

hasValidIBCVersion :: FilePath -> Idris Bool #

data IBCPhase #

When IBC is being loaded - we'll load different things (and omit different structures/definitions) depending on which phase we're in.

Constructors

IBC_Building | when building the module tree
IBC_REPL Bool | when loading modules for the REPL Bool = True for top level module

#### Instances

Instances details

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

getIBCHash :: FilePath -> Idris Int #

getImportHashes :: FilePath -> Idris [(FilePath, Int)] #

# Orphan instances

Binary CodeAttr # |
Instance details Methods put :: CodeAttr -> Put # get :: Get CodeAttr # putList :: [CodeAttr] -> Put #
Binary ListType # |
Instance details Methods put :: ListType -> Put # get :: Get ListType # putList :: [ListType] -> Put #
Binary NumWrapper # |
Instance details Methods put :: NumWrapper -> Put # get :: Get NumWrapper # putList :: [NumWrapper] -> Put #
Binary Options # |
Instance details Methods put :: Options -> Put # get :: Get Options # putList :: [Options] -> Put #
Binary ArgOpt # |
Instance details Methods put :: ArgOpt -> Put # get :: Get ArgOpt # putList :: [ArgOpt] -> Put #
Binary CGInfo # |
Instance details Methods put :: CGInfo -> Put # get :: Get CGInfo # putList :: [CGInfo] -> Put #
Binary DefaultTotality # |
Instance details Methods put :: DefaultTotality -> Put # get :: Get DefaultTotality # putList :: [DefaultTotality] -> Put #
Binary Directive # |
Instance details Methods put :: Directive -> Put # get :: Get Directive # putList :: [Directive] -> Put #
Binary FixDecl # |
Instance details Methods put :: FixDecl -> Put # get :: Get FixDecl # putList :: [FixDecl] -> Put #
Binary Fixity # |
Instance details Methods put :: Fixity -> Put # get :: Get Fixity # putList :: [Fixity] -> Put #
Binary FnInfo # |
Instance details Methods put :: FnInfo -> Put # get :: Get FnInfo # putList :: [FnInfo] -> Put #
Binary FnOpt # |
Instance details Methods put :: FnOpt -> Put # get :: Get FnOpt # putList :: [FnOpt] -> Put #
Binary InterfaceInfo # |
Instance details Methods put :: InterfaceInfo -> Put # get :: Get InterfaceInfo # putList :: [InterfaceInfo] -> Put #
Binary OptInfo # |
Instance details Methods put :: OptInfo -> Put # get :: Get OptInfo # putList :: [OptInfo] -> Put #
Binary PAltType # |
Instance details Methods put :: PAltType -> Put # get :: Get PAltType # putList :: [PAltType] -> Put #
Binary PTerm # |
Instance details Methods put :: PTerm -> Put # get :: Get PTerm # putList :: [PTerm] -> Put #
Binary Plicity # |
Instance details Methods put :: Plicity -> Put # get :: Get Plicity # putList :: [Plicity] -> Put #
Binary PunInfo # |
Instance details Methods put :: PunInfo -> Put # get :: Get PunInfo # putList :: [PunInfo] -> Put #
Binary RecordInfo # |
Instance details Methods put :: RecordInfo -> Put # get :: Get RecordInfo # putList :: [RecordInfo] -> Put #
Binary SSymbol # |
Instance details Methods put :: SSymbol -> Put # get :: Get SSymbol # putList :: [SSymbol] -> Put #
Binary SizeChange # |
Instance details Methods put :: SizeChange -> Put # get :: Get SizeChange # putList :: [SizeChange] -> Put #
Binary Static # |
Instance details Methods put :: Static -> Put # get :: Get Static # putList :: [Static] -> Put #
Binary SynContext # |
Instance details Methods put :: SynContext -> Put # get :: Get SynContext # putList :: [SynContext] -> Put #
Binary Syntax # |
Instance details Methods put :: Syntax -> Put # get :: Get Syntax # putList :: [Syntax] -> Put #
Binary SyntaxInfo # |
Instance details Methods put :: SyntaxInfo -> Put # get :: Get SyntaxInfo # putList :: [SyntaxInfo] -> Put #
Binary Using # |
Instance details Methods put :: Using -> Put # get :: Get Using # putList :: [Using] -> Put #
Binary CaseAlt # |
Instance details Methods put :: CaseAlt -> Put # get :: Get CaseAlt # putList :: [CaseAlt] -> Put #
Binary CaseType # |
Instance details Methods put :: CaseType -> Put # get :: Get CaseType # putList :: [CaseType] -> Put #
Binary SC # |
Instance details Methods put :: SC -> Put # get :: Get SC # putList :: [SC] -> Put #
Binary Accessibility # |
Instance details Methods put :: Accessibility -> Put # get :: Get Accessibility # putList :: [Accessibility] -> Put #
Binary CaseDefs # |
Instance details Methods put :: CaseDefs -> Put # get :: Get CaseDefs # putList :: [CaseDefs] -> Put #
Binary CaseInfo # |
Instance details Methods put :: CaseInfo -> Put # get :: Get CaseInfo # putList :: [CaseInfo] -> Put #
Binary Def # |
Instance details Methods put :: Def -> Put # get :: Get Def # putList :: [Def] -> Put #
Binary MetaInformation # |
Instance details Methods put :: MetaInformation -> Put # get :: Get MetaInformation # putList :: [MetaInformation] -> Put #
Binary PReason # |
Instance details Methods put :: PReason -> Put # get :: Get PReason # putList :: [PReason] -> Put #
Binary Totality # |
Instance details Methods put :: Totality -> Put # get :: Get Totality # putList :: [Totality] -> Put #
Binary DataOpt # |
Instance details Methods put :: DataOpt -> Put # get :: Get DataOpt # putList :: [DataOpt] -> Put #
Binary TypeInfo # |
Instance details Methods put :: TypeInfo -> Put # get :: Get TypeInfo # putList :: [TypeInfo] -> Put #
Binary DocTerm # |
Instance details Methods put :: DocTerm -> Put # get :: Get DocTerm # putList :: [DocTerm] -> Put #
Binary Codegen # |
Instance details Methods put :: Codegen -> Put # get :: Get Codegen # putList :: [Codegen] -> Put #
Binary IRFormat # |
Instance details Methods put :: IRFormat -> Put # get :: Get IRFormat # putList :: [IRFormat] -> Put #
Binary LanguageExt # |
Instance details Methods put :: LanguageExt -> Put # get :: Get LanguageExt # putList :: [LanguageExt] -> Put #
Binary t => Binary (DSL' t) # |
Instance details Methods put :: DSL' t -> Put # get :: Get (DSL' t) # putList :: [DSL' t] -> Put #
Binary t => Binary (PArg' t) # |
Instance details Methods put :: PArg' t -> Put # get :: Get (PArg' t) # putList :: [PArg' t] -> Put #
Binary t => Binary (PClause' t) # |
Instance details Methods put :: PClause' t -> Put # get :: Get (PClause' t) # putList :: [PClause' t] -> Put #
Binary t => Binary (PData' t) # |
Instance details Methods put :: PData' t -> Put # get :: Get (PData' t) # putList :: [PData' t] -> Put #
Binary t => Binary (PDecl' t) # |
Instance details Methods put :: PDecl' t -> Put # get :: Get (PDecl' t) # putList :: [PDecl' t] -> Put #
Binary t => Binary (PDo' t) # |
Instance details Methods put :: PDo' t -> Put # get :: Get (PDo' t) # putList :: [PDo' t] -> Put #
Binary t => Binary (PTactic' t) # |
Instance details Methods put :: PTactic' t -> Put # get :: Get (PTactic' t) # putList :: [PTactic' t] -> Put #
Binary t => Binary (ProvideWhat' t) # |
Instance details Methods put :: ProvideWhat' t -> Put # get :: Get (ProvideWhat' t) # putList :: [ProvideWhat' t] -> Put #
Binary a => Binary (Block a) # |
Instance details Methods put :: Block a -> Put # get :: Get (Block a) # putList :: [Block a] -> Put #
Binary a => Binary (Docstring a) # |
Instance details Methods put :: Docstring a -> Put # get :: Get (Docstring a) # putList :: [Docstring a] -> Put #
Binary a => Binary (Inline a) # |
Instance details Methods put :: Inline a -> Put # get :: Get (Inline a) # putList :: [Inline a] -> Put #