Start adding implementations for runtime-provided native methods.
The library can't do everything...
Change-Id: Ib808c00570c7214aeb2ca058b1a66cacbeb372f1
diff --git a/src/object.h b/src/object.h
index 1db3e83..506e39c 100644
--- a/src/object.h
+++ b/src/object.h
@@ -184,6 +184,11 @@
size_t SizeOf() const;
+ Object* Clone() {
+ UNIMPLEMENTED(FATAL);
+ return NULL;
+ }
+
void MonitorEnter() {
monitor_->Enter();
}
@@ -826,6 +831,10 @@
return MemberOffset(OFFSETOF_MEMBER(Array, first_element_));
}
+ void* GetRawData() {
+ return reinterpret_cast<void*>(first_element_);
+ }
+
protected:
bool IsValidIndex(int32_t index) const {
if (index < 0 || index >= length_) {
@@ -1114,6 +1123,8 @@
return that->IsPublic() || this->IsInSamePackage(that);
}
+ static bool CanPutArrayElementNoThrow(const Class* elementClass, const Class* arrayClass);
+
// Returns the number of static, private, and constructor methods.
size_t NumDirectMethods() const {
return (direct_methods_ != NULL) ? direct_methods_->GetLength() : 0;
@@ -1688,6 +1699,11 @@
return result;
}
+ String* Intern() const {
+ UNIMPLEMENTED(FATAL);
+ return NULL;
+ }
+
private:
// Field order required by test "ValidateFieldOrderOfJavaCppUnionClasses".
CharArray* array_;