/** * Returns version of the contained Class * * @return The version of the contained class. */ public int getVersion() { return theCachedClass.classInfo.getVersion(); }
public ClassMetaClassGetPropertySite(CallSite parent, Class aClass) { super(parent); this.aClass = aClass; classInfo = ClassInfo.getClassInfo(aClass); version = classInfo.getVersion(); metaClass = classInfo.getMetaClass(); }
public final CallSite acceptGetProperty(Object receiver) { if (receiver != aClass || version != classInfo.getVersion()) // metaClass is invalid return createGetPropertySite(receiver); else return this; }
public PojoMetaClassSite(CallSite site, MetaClass metaClass) { super(site, metaClass); classInfo = ClassInfo.getClassInfo(metaClass.getTheClass()); version = classInfo.getVersion(); }
protected final boolean checkCall(Object receiver) { return receiver!=null && receiver.getClass() == metaClass.getTheClass() && version == classInfo.getVersion(); // metaClass is still valid } }
public StaticMetaClassSite(CallSite site, MetaClass metaClass) { super(site, metaClass); classInfo = ClassInfo.getClassInfo(metaClass.getTheClass()); version = classInfo.getVersion(); }
public MetaClassConstructorSite(CallSite site, MetaClass metaClass) { super(site, metaClass); classInfo = ClassInfo.getClassInfo(metaClass.getTheClass()); version = classInfo.getVersion(); }
private boolean checkCall(Object receiver) { return receiver == metaClass.getTheClass() && version == classInfo.getVersion(); // metaClass still be valid }
public Object callConstructor(Object receiver, Object[] args) throws Throwable { try { if (receiver == metaClass.getTheClass() && version == classInfo.getVersion()) // metaClass still be valid return metaClass.invokeConstructor(args); else return CallSiteArray.defaultCallConstructor(this, receiver, args); } catch (GroovyRuntimeException gre) { throw ScriptBytecodeAdapter.unwrap(gre); } } }
public ClassMetaClassGetPropertySite(CallSite parent, Class aClass) { super(parent); this.aClass = aClass; classInfo = ClassInfo.getClassInfo(aClass); version = classInfo.getVersion(); metaClass = classInfo.getMetaClass(); }
public PojoMetaClassSite(CallSite site, MetaClass metaClass) { super(site, metaClass); classInfo = ClassInfo.getClassInfo(metaClass.getTheClass()); version = classInfo.getVersion(); }
protected final boolean checkCall(Object receiver) { return receiver.getClass() == metaClass.getTheClass() && version == classInfo.getVersion(); // metaClass is still valid } }
public PojoMetaClassSite(CallSite site, MetaClass metaClass) { super(site, metaClass); classInfo = ClassInfo.getClassInfo(metaClass.getTheClass()); version = classInfo.getVersion(); }
protected final boolean checkCall(Object receiver) { return receiver.getClass() == metaClass.getTheClass() && version == classInfo.getVersion(); // metaClass is still valid } }
public MetaClassConstructorSite(CallSite site, MetaClass metaClass) { super(site, metaClass); classInfo = ClassInfo.getClassInfo(metaClass.getTheClass()); version = classInfo.getVersion(); }
public StaticMetaClassSite(CallSite site, MetaClass metaClass) { super(site, metaClass); classInfo = ClassInfo.getClassInfo(metaClass.getTheClass()); version = classInfo.getVersion(); }
public final CallSite acceptGetProperty(Object receiver) { if (receiver != aClass || version != classInfo.getVersion()) // metaClass is invalid return createGetPropertySite(receiver); else return this; }
public StaticMetaClassSite(CallSite site, MetaClass metaClass) { super(site, metaClass); classInfo = ClassInfo.getClassInfo(metaClass.getTheClass()); version = classInfo.getVersion(); }
public Object callConstructor(Object receiver, Object[] args) throws Throwable { try { if (receiver == metaClass.getTheClass() && version == classInfo.getVersion()) // metaClass still be valid return metaClass.invokeConstructor(args); else return CallSiteArray.defaultCallConstructor(this, receiver, args); } catch (GroovyRuntimeException gre) { throw ScriptBytecodeAdapter.unwrap(gre); } } }
public Object callConstructor(Object receiver, Object[] args) throws Throwable { try { if (receiver == metaClass.getTheClass() && version == classInfo.getVersion()) // metaClass still be valid return metaClass.invokeConstructor(args); else return CallSiteArray.defaultCallConstructor(this, receiver, args); } catch (GroovyRuntimeException gre) { throw ScriptBytecodeAdapter.unwrap(gre); } } }