zeolite-lang-0.7.0.2: Zeolite is a statically-typed, general-purpose programming language.

Safe HaskellSafe
LanguageHaskell2010

Compilation.ProcedureContext

Documentation

data ProcedureContext c Source #

Instances
(Show c, MergeableM m, CompileErrorM m) => CompilerContext c m [String] (ProcedureContext c) Source # 
Instance details

Defined in Compilation.ProcedureContext

Methods

ccCurrentScope :: ProcedureContext c -> m SymbolScope Source #

ccResolver :: ProcedureContext c -> m AnyTypeResolver Source #

ccSameType :: ProcedureContext c -> TypeInstance -> m Bool Source #

ccAllFilters :: ProcedureContext c -> m ParamFilters Source #

ccGetParamScope :: ProcedureContext c -> ParamName -> m SymbolScope Source #

ccRequiresTypes :: ProcedureContext c -> Set CategoryName -> m (ProcedureContext c) Source #

ccGetRequired :: ProcedureContext c -> m (Set CategoryName) Source #

ccGetCategoryFunction :: ProcedureContext c -> [c] -> Maybe CategoryName -> FunctionName -> m (ScopedFunction c) Source #

ccGetTypeFunction :: ProcedureContext c -> [c] -> Maybe GeneralInstance -> FunctionName -> m (ScopedFunction c) Source #

ccCheckValueInit :: ProcedureContext c -> [c] -> TypeInstance -> ExpressionType -> Positional GeneralInstance -> m () Source #

ccGetVariable :: ProcedureContext c -> [c] -> VariableName -> m (VariableValue c) Source #

ccAddVariable :: ProcedureContext c -> [c] -> VariableName -> VariableValue c -> m (ProcedureContext c) Source #

ccCheckVariableInit :: ProcedureContext c -> [c] -> VariableName -> m () Source #

ccWrite :: ProcedureContext c -> [String] -> m (ProcedureContext c) Source #

ccGetOutput :: ProcedureContext c -> m [String] Source #

ccClearOutput :: ProcedureContext c -> m (ProcedureContext c) Source #

ccUpdateAssigned :: ProcedureContext c -> VariableName -> m (ProcedureContext c) Source #

ccInheritReturns :: ProcedureContext c -> [ProcedureContext c] -> m (ProcedureContext c) Source #

ccRegisterReturn :: ProcedureContext c -> [c] -> Maybe ExpressionType -> m (ProcedureContext c) Source #

ccPrimNamedReturns :: ProcedureContext c -> m [ReturnVariable] Source #

ccIsUnreachable :: ProcedureContext c -> m Bool Source #

ccIsNamedReturns :: ProcedureContext c -> m Bool Source #

ccSetNoReturn :: ProcedureContext c -> m (ProcedureContext c) Source #

ccStartLoop :: ProcedureContext c -> LoopSetup [String] -> m (ProcedureContext c) Source #

ccGetLoop :: ProcedureContext c -> m (LoopSetup [String]) Source #

ccPushCleanup :: ProcedureContext c -> CleanupSetup (ProcedureContext c) [String] -> m (ProcedureContext c) Source #

ccGetCleanup :: ProcedureContext c -> m (CleanupSetup (ProcedureContext c) [String]) Source #

ccExprLookup :: ProcedureContext c -> [c] -> String -> m (Expression c) Source #

ccSetNoTrace :: ProcedureContext c -> Bool -> m (ProcedureContext c) Source #

ccGetNoTrace :: ProcedureContext c -> m Bool Source #