sinterface IResourceLoader { S loadSnippet(S snippetID); S getTranspiled(S snippetID); // with libs int getSnippetType(S snippetID); S getSnippetTitle(S snippetID); File loadLibrary(S snippetID); ifndef NoJavaXJar public default File pathToJavaXJar() { ret pathToJavaxJar_noResourceLoader(); } endifndef // may return null, then caller compiles themselves default File getSnippetJar(S snippetID, S transpiledSrc) { null; } }