Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell2010 |
ProjectM36.AtomFunction
Synopsis
- foldAtomFuncType :: AtomType -> AtomType -> [AtomType]
- atomFunctionForName :: FunctionName -> AtomFunctions -> Either RelationalError AtomFunction
- emptyAtomFunction :: FunctionName -> AtomFunction
- compiledAtomFunction :: FunctionName -> [AtomType] -> AtomFunctionBodyType -> AtomFunction
- evalAtomFunction :: AtomFunction -> [Atom] -> Either AtomFunctionError Atom
- extractAtomFunctionType :: [TypeConstructor] -> Either RelationalError [TypeConstructor]
- isScriptedAtomFunction :: AtomFunction -> Bool
- createScriptedAtomFunction :: FunctionName -> [TypeConstructor] -> TypeConstructor -> FunctionBodyScript -> DatabaseContextIOExpr
- atomFunctionsAsRelation :: AtomFunctions -> Either RelationalError Relation
- externalAtomFunction :: AtomFunctionBodyType -> AtomFunctionBody
Documentation
atomFunctionForName :: FunctionName -> AtomFunctions -> Either RelationalError AtomFunction Source #
emptyAtomFunction :: FunctionName -> AtomFunction Source #
Create a junk named atom function for use with searching for an already existing function in the AtomFunctions HashSet.
compiledAtomFunction :: FunctionName -> [AtomType] -> AtomFunctionBodyType -> AtomFunction Source #
AtomFunction constructor for compiled-in functions.
evalAtomFunction :: AtomFunction -> [Atom] -> Either AtomFunctionError Atom Source #
createScriptedAtomFunction :: FunctionName -> [TypeConstructor] -> TypeConstructor -> FunctionBodyScript -> DatabaseContextIOExpr Source #
Create a DatabaseContextIOExpr
which can be used to load a new atom function written in Haskell and loaded at runtime.
externalAtomFunction :: AtomFunctionBodyType -> AtomFunctionBody Source #
Used to mark functions which are loaded externally from the server.