module {
export = [possibleUnsafeSclValueByName, unsafeSclValueByName, sclModuleNames, moduleByName,
- documentationOfSCLValue, sclValueRef]
+ documentationOfSCLValue, sclValueRef, possibleModuleSourceText, flushModuleRepository,
+ flushDefaultModuleRepository]
}
include "./CurrentModuleRepository"
@JavaName getModule
moduleByName_ :: ModuleRepository -> String -> <Proc> Failable Module
+ @JavaName flush
+ flushModuleRepository :: ModuleRepository -> <Proc> ()
+
importJava "org.simantics.scl.compiler.source.repository.ModuleSourceRepository" where
data ModuleSourceRepository
@JavaName getModuleNames
sclModuleNames_ :: ModuleSourceRepository -> [String]
+
+ @JavaName getPossibleSourceText
+ possibleModuleSourceText_ :: ModuleSourceRepository -> String -> <Proc> Maybe String
importJava "org.simantics.scl.compiler.errors.Failable" where
data Failable a
sclValueRef name = sclValueRef_ MODULE_REPOSITORY name
+flushDefaultModuleRepository :: <Proc> ()
+flushDefaultModuleRepository = flushModuleRepository MODULE_REPOSITORY
+
possibleUnsafeSclValueByName :: String -> <Proc> Maybe a
possibleUnsafeSclValueByName name = Just (unsafeSclValueByName name) `catch` \(_ :: Exception) -> Nothing
moduleByName :: String -> <Proc> Maybe Module
moduleByName name = getResult failable
where
- failable = moduleByName_ MODULE_REPOSITORY name
\ No newline at end of file
+ failable = moduleByName_ MODULE_REPOSITORY name
+
+possibleModuleSourceText :: String -> <Proc> Maybe String
+possibleModuleSourceText name = possibleModuleSourceText_ (moduleSourceRepositoryOf MODULE_REPOSITORY) name
\ No newline at end of file