Module SCL/ModuleRepository

This module is undocumented. This is a list of its definitions.

documentationOfSCLValue :: SCLValue -> <Proc> String
flushDefaultModuleRepository :: <Proc> ()

Discards everything the module repository the calling module was compiled in has compiled, so that every module is compiled again when it is next needed. Meant for testing, not for normal operation.

flushModuleRepository :: ModuleRepository -> <Proc> ()

Discards everything the given module repository has compiled, so that every module is compiled again when it is next needed. Meant for testing, not for normal operation.

moduleByName :: String -> <Proc> Maybe Module

The compiled form of the named module, from the module repository the calling module was compiled in. Fails, rather than giving Nothing, if the module does not exist or does not compile.

possibleModuleSourceText :: String -> <Proc> Maybe String

The source text of the named module, from the source repository of the module repository the calling module was compiled in, or Nothing if there is no such module or its source is not text.

possibleUnsafeSclValueByName :: String -> <Proc> Maybe a

Like unsafeSclValueByName, but gives Nothing instead of failing when the value cannot be resolved for any reason.

sclModuleNames :: <Proc> [String]

The names of the modules provided by the source repository of the module repository the calling module was compiled in. Some source repositories give an empty list even when they do provide modules.

sclValueRef :: String -> <Proc> Maybe SCLValue
unsafeSclValueByName :: String -> <Proc> a

The value with the given full name Module/name, resolved in the module repository the calling module was compiled in.

The result is not type checked: the caller decides what type it is used at, and getting that wrong fails later. Fails if the name is not a valid full value name, or if the module does not exist, does not compile or does not define the value.