Create proxy class, constructor, and methods.
This code compiles but has not been exercised. I still
need to wire in the code blocks and return types.
Change-Id: I1796103d3bc4fc3c863f95bdca4cfb9765d4b3b7
diff --git a/src/object.h b/src/object.h
index 5bbdc6b..a4e9c7a 100644
--- a/src/object.h
+++ b/src/object.h
@@ -949,6 +949,10 @@
SetField32(OFFSET_OF_OBJECT_MEMBER(Method, fp_spill_mask_), fp_spill_mask, false);
}
+ void SetExceptionTypes(Object* exception_types) {
+ SetFieldObject(OFFSET_OF_OBJECT_MEMBER(Method, java_exception_types_), exception_types, false);
+ }
+
ObjectArray<Class>* GetJavaParameterTypes() const {
return GetFieldObject<ObjectArray<Class>*>(
OFFSET_OF_OBJECT_MEMBER(Method, java_parameter_types_), false);
@@ -2767,6 +2771,22 @@
DISALLOW_IMPLICIT_CONSTRUCTORS(InterfaceEntry);
};
+class MANAGED ProxyClass : public Class {
+ private:
+ int32_t NextClassNameIndex_;
+ int64_t serialVersionUID_;
+ friend struct ProxyClassOffsets; // for verifying offset information
+ DISALLOW_IMPLICIT_CONSTRUCTORS(ProxyClass);
+};
+
+class MANAGED Proxy : public Object {
+ private:
+ Object* h_;
+
+ friend struct ProxyOffsets; // for verifying offset information
+ DISALLOW_IMPLICIT_CONSTRUCTORS(Proxy);
+};
+
} // namespace art
#endif // ART_SRC_OBJECT_H_