update Singeli submodule, use Singeli BQN output
This commit is contained in:
parent
8c1040bd9f
commit
e962195958
@ -1 +1 @@
|
||||
Subproject commit 17c512727dbcb6d58a2adadac4661bc9c43920d2
|
||||
Subproject commit 105c9b598a4e6eb90347a072042b3064a190bafb
|
||||
@ -706,8 +706,7 @@ MakeSingeliInv ← { 𝕊 args‿Init‿cache‿id‿src‿customDeps: # src sho
|
||||
dst ← cache.File id∾".c"
|
||||
GetCMD ← { 𝕊:
|
||||
Init @
|
||||
dep ← AtRoot cache.File id∾".d"
|
||||
⟨"singeli", rootDir, AtRoot dst, AtRoot po.singeliDir, args, AtRoot src, dep⟩
|
||||
⟨"singeli", rootDir, AtRoot dst, AtRoot po.singeliDir, args, AtRoot src⟩
|
||||
}
|
||||
AddRule ⟨cache, id, dst, GetCMD, •file.Name src, customDeps⟩
|
||||
}
|
||||
|
||||
@ -7,17 +7,16 @@ Good ← { 𝕊 dir‿t0‿t1‿o‿e‿deps:
|
||||
⟨1, o∾e, t1-t0, deps ⋈¨ (•file.Modified dir•file.At⊢)¨ deps⟩
|
||||
}
|
||||
|
||||
_runSingeli_ ← { runArgs GetDeps _𝕣_ dir runFile:
|
||||
_runImport_ ← { runArgs Process _𝕣_ dir runFile: # Process returns {deps‿o‿e⇐}, with e⇐@ for no error
|
||||
t0 ← •MonoTime@
|
||||
e←@ ⋄ deps←@
|
||||
o←@ ⋄ e←@ ⋄ deps←@
|
||||
{𝕊:
|
||||
runArgs •Import runFile
|
||||
deps ↩ GetDeps@
|
||||
deps‿o‿e ↩ Process runArgs •Import runFile
|
||||
}⎊{𝕊: e↩•CurrentError@} @
|
||||
t1 ← •MonoTime@
|
||||
{
|
||||
e≢@? ⟨0, e⟩;
|
||||
Good ⟨dir,t0,t1,"","",deps⟩
|
||||
Good ⟨dir,t0,t1,o,"",deps⟩
|
||||
}
|
||||
}
|
||||
|
||||
@ -49,13 +48,18 @@ _runSingeli_ ← { runArgs GetDeps _𝕣_ dir runFile:
|
||||
•file.Remove⍟•file.Exists dst
|
||||
𝕊 cmd
|
||||
;
|
||||
"singeli"‿dir‿dst‿singeliDir‿args‿src‿dep:
|
||||
"singeli"‿dir‿dst‿singeliDir‿args‿src:
|
||||
prefix ← "si_"∾ (∧`'.'⊸≠)⊸/ •file.Name src
|
||||
argsFinal ← args∾⟨"-d" ⋄ dep ⋄ "-o" ⋄ dst ⋄ "-n" ⋄ prefix ⋄ src⟩
|
||||
argsFinal {𝕊: src<⊸∾ SimplifyPath¨ singeliDir⊸•file.At¨ •FLines dep}_runSingeli_ dir singeliDir •file.At "singeli"
|
||||
argsFinal ← args∾⟨"-oe", "bqn", "-os", "none", "-o" ⋄ dst ⋄ "-n" ⋄ prefix ⋄ src⟩
|
||||
Process ← { 𝕊 res:
|
||||
deps ⇐ src<⊸∾ SimplifyPath¨ res.deplog
|
||||
o ⇐ ∾ ∾⟜(@+10)¨ res.show
|
||||
e ⇐ {⟨⟩: @; ⋈⁼𝕩} res.errout
|
||||
}
|
||||
argsFinal Process _runImport_ dir singeliDir •file.At "singeli"
|
||||
;
|
||||
"runbqn"‿dir‿file‿args‿deps:
|
||||
args deps _runSingeli_ dir file
|
||||
args {deps⇐deps, o⇐"", e⇐@} _runImport_ dir file
|
||||
;
|
||||
"dry"‿args:
|
||||
⟨dir⟩ ← 1↑args
|
||||
|
||||
Loading…
Reference in New Issue
Block a user