try {
if (!name.startsWith("japidviews.")) {
// let super class loader to load the bytecode
// byte[] bytes = this.rendererCompiler.crlr.getClassDefinition(name);
byte[] bytes = this.rendererCompiler.crlr.getClassDefinition(name);
return bytes == null? null : new NameEnvironmentAnswer(new ClassFileReader(bytes, name.toCharArray(), true), null);
} else {
char[] fileName = name.toCharArray();
RendererClass applicationClass = this.rendererCompiler.japidClasses.get(name);
// ApplicationClass exists
if (applicationClass != null) {
byte[] bytecode = applicationClass.getBytecode();
if (bytecode != null) {
ClassFileReader classFileReader = new ClassFileReader(bytecode, fileName, true);
return new NameEnvironmentAnswer(classFileReader, null);
}
// Cascade compilation
ICompilationUnit compilationUnit = new CompilationUnit(this.rendererCompiler, name);
return new NameEnvironmentAnswer(compilationUnit, null);