ctx.globalAppend(Stmt.declareVariable(creationCallbackRef).asFinal().named(creationalCallbackVarName)
.initializeWith(callbackBuilder.finish().finish()));
if (isSingleton()) {
ctx.globalAppend(Stmt.declareVariable(type).asFinal().named(varName)
.initializeWith(Stmt.loadVariable(creationalCallbackVarName).invoke("getInstance")));
return Refs.get(varName);
}
else {