protected Object compileSrc(String src,BasicCompileInfo info) { Object data; try { if(logger.isDebugEnabled()) { logger.debug("compile "+info.getOutputClassName()+"\n"+src); } Scanner scanner = new Scanner(null, new StringReader(src)); Class baseClass = info.getBaseClass(); Class interfaceClass[] = info.getInterfaceClass(); data = ClassBodyEvaluator.createFastClassBodyEvaluator(scanner,info.getOutputClassName(),baseClass,interfaceClass,null); } catch (CompileException e) { compileProcessError(src,info.getBaseObject(),e.getLocation(),e.getMessage()); throw new CompileRuntimeException(e); } catch (ParseException e) { compileProcessError(src,info.getBaseObject(),e.getLocation(),e.getMessage()); throw new ParseRuntimeException(e); } catch (ScanException e) { compileProcessError(src,info.getBaseObject(),e.getLocation(),e.getMessage()); throw new ScanRuntimeException(e); } catch (IOException e) { throw new IORuntimeException(e); } return data; }