X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=src%2FPursLoader%2FLoader.purs;h=3cb99cd47cd258e7aa155ef23d7ff051f8a091be;hb=07de44be15efb0ca9a2d1443ab1e91076a25409c;hp=5373d2f1e6320c288d59a0b0aa4adec66e147903;hpb=03b840cb5fb8ff5217fefc9e1240a3131db309fc;p=github%2Ffretlink%2Fpurs-loader.git diff --git a/src/PursLoader/Loader.purs b/src/PursLoader/Loader.purs index 5373d2f..3cb99cd 100644 --- a/src/PursLoader/Loader.purs +++ b/src/PursLoader/Loader.purs @@ -16,6 +16,7 @@ import Data.Function (Fn2(), mkFn2) import Data.Maybe (Maybe(..), fromMaybe, maybe) import Data.String (joinWith) import Data.String.Regex (match, noFlags, regex, test) +import Data.Traversable (sequence) import PursLoader.ChildProcess (ChildProcess(), spawn) import PursLoader.FS (FS(), writeFileUtf8, findFileUtf8) @@ -42,6 +43,8 @@ foreign import cwd :: String foreign import relative :: String -> String -> String +foreign import resolve :: String -> String + mkPsci :: Array (Array String) -> Array (Array String) -> String mkPsci srcs ffis = joinWith "\n" ((loadModule <$> concat srcs) <> (loadForeign <$> concat ffis)) where @@ -80,6 +83,7 @@ loader' ref source = do liftEff (clearDependencies ref) liftEff (addDependency ref (resourcePath ref)) + liftEff (sequence $ (\src -> addDependency ref (resolve src)) <$> concat srcss) foreignPath <- if hasForeign then fromMaybe (pure Nothing) (findFFI ffiss <$> moduleName)