// r : voidfunc(snippet ID), called in module queue svoid dm_onSnippetTranspiled(VF1 r) { dm_requireSnippetUpdatesModule(); final DynModule m = dm_current_mandatory(); dm_vmBus_onMessage('snippetUpdate, voidfunc(fL l) { switch to m.q(); S uri = getString(l, 1); new Matches m; if (swic(uri, "/transpileOK/", m)) { S snippetID = fsI(firstIntAsString(m.rest())); callF(r, snippetID); } }); } svoid dm_onSnippetTranspiled(S snippetID, Runnable r) { if (empty(snippetID) || r == null) ret; dm_onSnippetTranspiled(voidfunc(S snippetID2) { if (sameSnippetID(snippetID, snippetID2)) r.run(); }); }