Reviewed by Geoff.
authorandersca <andersca@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 13 Jun 2007 03:43:59 +0000 (03:43 +0000)
committerandersca <andersca@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 13 Jun 2007 03:43:59 +0000 (03:43 +0000)
        Get rid of Constructor and its only subclass JavaConstructor.

        * bindings/c/c_class.h:
        * bindings/jni/jni_class.cpp:
        (JavaClass::JavaClass):
        (JavaClass::~JavaClass):
        * bindings/jni/jni_class.h:
        * bindings/jni/jni_runtime.cpp:
        * bindings/jni/jni_runtime.h:
        * bindings/objc/objc_class.h:
        * bindings/runtime.h:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@23473 268f45cc-cd09-0410-ab3c-d52691b4dbfc

JavaScriptCore/ChangeLog
JavaScriptCore/bindings/c/c_class.h
JavaScriptCore/bindings/jni/jni_class.cpp
JavaScriptCore/bindings/jni/jni_class.h
JavaScriptCore/bindings/jni/jni_runtime.cpp
JavaScriptCore/bindings/jni/jni_runtime.h
JavaScriptCore/bindings/objc/objc_class.h
JavaScriptCore/bindings/runtime.h

index 4752463e76207e6eafff28f545b1d537164eadc6..19ee95c9fa50383f102229e795ad8656e08caaf7 100644 (file)
@@ -1,3 +1,19 @@
+2007-06-12  Anders Carlsson  <andersca@apple.com>
+
+        Reviewed by Geoff.
+
+        Get rid of Constructor and its only subclass JavaConstructor.
+        
+        * bindings/c/c_class.h:
+        * bindings/jni/jni_class.cpp:
+        (JavaClass::JavaClass):
+        (JavaClass::~JavaClass):
+        * bindings/jni/jni_class.h:
+        * bindings/jni/jni_runtime.cpp:
+        * bindings/jni/jni_runtime.h:
+        * bindings/objc/objc_class.h:
+        * bindings/runtime.h:
+
 2007-06-12  Anders Carlsson  <andersca@apple.com>
 
         Reviewed by Geoff.
index 3fe99543c9b933f99b1edb3987bd6ce5aa259411..f26f297fd81c86497a4268d93f32fb30760868e9 100644 (file)
@@ -45,9 +45,6 @@ public:
     virtual MethodList methodsNamed(const Identifier&, Instance*) const;
     virtual Field* fieldNamed(const Identifier&, Instance*) const;
 
-    virtual Constructor* constructorAt(int) const { return 0; }
-    virtual int numConstructors() const { return 0; }
-
 private:
     NPClass* _isa;
     mutable MethodMap _methods;
index ad1d69eaca2b2f429afec9d31940435eb8d4f5ab..24098441b4cfc54e68cf96b99c0ef7a4c103b3a2 100644 (file)
@@ -79,17 +79,7 @@ JavaClass::JavaClass(jobject anInstance)
         }
         methodList->addMethod(aMethod);
         env->DeleteLocalRef(aJMethod);
-    }
-    
-    // Get the constructors
-    jarray constructors = (jarray)callJNIObjectMethod (aClass, "getConstructors", "()[Ljava/lang/reflect/Constructor;");
-    _numConstructors = env->GetArrayLength(constructors);    
-    _constructors = new JavaConstructor[_numConstructors];
-    for (i = 0; i < _numConstructors; i++) {
-        jobject aConstructor = env->GetObjectArrayElement((jobjectArray)constructors, i);
-        _constructors[i] = JavaConstructor(env, aConstructor);
-        env->DeleteLocalRef(aConstructor);
-    }
+    }    
 }
 
 JavaClass::~JavaClass() {
@@ -109,8 +99,6 @@ JavaClass::~JavaClass() {
         delete methodList;
     }
     _methods.clear();
-    
-    delete [] _constructors;
 }
 
 MethodList JavaClass::methodsNamed(const Identifier& identifier, Instance*) const
index 4249b3965a9e08bf873745fb67cfe23f6681e435..7c5dbcc61c1f4407f69e77c58d364b8cb48f6046 100644 (file)
@@ -40,15 +40,8 @@ public:
 
     virtual const char *name() const { return _name; };
     
-    virtual MethodList methodsNamed(const Identifier&, Instance *instance) const;
-    
-    virtual Field *fieldNamed(const Identifier&, Instance *instance) const;
-    
-    virtual Constructor *constructorAt(int i) const {
-        return &_constructors[i]; 
-    };
-    
-    virtual int numConstructors() const { return _numConstructors; };
+    virtual MethodList methodsNamed(const Identifier&, Instance* instance) const;    
+    virtual Field *fieldNamed(const Identifier&, Instance* instance) const;
     
     bool isNumberClass() const;
     bool isBooleanClass() const;
@@ -60,8 +53,6 @@ private:
     const char *_name;
     FieldMap _fields;
     MethodListMap _methods;
-    JavaConstructor *_constructors;
-    int _numConstructors;
 };
 
 } // namespace Bindings
index 18a52e61f65ae727544b6daa5a68a23cebc7df82..a37e61b471fda107a686d36e0972c634c864e174 100644 (file)
@@ -245,23 +245,6 @@ void JavaField::setValueToInstance(ExecState *exec, const Instance *i, JSValue *
     }
 }
 
-JavaConstructor::JavaConstructor (JNIEnv *env, jobject aConstructor)
-{
-    // Get parameters
-    jarray jparameters = (jarray)callJNIObjectMethod (aConstructor, "getParameterTypes", "()[Ljava/lang/Class;");
-    _numParameters = env->GetArrayLength (jparameters);
-    _parameters = new JavaParameter[_numParameters];
-    
-    int i;
-    for (i = 0; i < _numParameters; i++) {
-        jobject aParameter = env->GetObjectArrayElement ((jobjectArray)jparameters, i);
-        jstring parameterName = (jstring)callJNIObjectMethod (aParameter, "getName", "()Ljava/lang/String;");
-        _parameters[i] = JavaParameter(env, parameterName);
-        env->DeleteLocalRef (aParameter);
-        env->DeleteLocalRef (parameterName);
-    }
-}
-
 JavaMethod::JavaMethod (JNIEnv *env, jobject aMethod)
 {
     // Get return type
index 91a51dbae118f874e18ff5f317131c37c4563331..3421f450fbb3e97e68d520a83fba2e2115c2c5de 100644 (file)
@@ -91,26 +91,7 @@ public:
     JavaParameter () : _JNIType(invalid_type) {};
     
     JavaParameter (JNIEnv *env, jstring type);
-        
-    ~JavaParameter() {
-    };
 
-    JavaParameter(const JavaParameter &other) : Parameter() {
-        _type = other._type;
-        _JNIType = other._JNIType;
-    };
-
-    JavaParameter &operator=(const JavaParameter &other)
-    {
-        if (this == &other)
-            return *this;
-                    
-        _type = other._type;
-        _JNIType = other._JNIType;
-
-        return *this;
-    }
-    
     virtual RuntimeType type() const { return _type.UTF8String(); }
 
     JNIType getJNIType() const { return _JNIType; }
@@ -121,72 +102,12 @@ private:
 };
 
 
-class JavaConstructor : public Constructor
-{
-public:
-    JavaConstructor() : _parameters (0), _numParameters(0) {};
-    
-    JavaConstructor (JNIEnv *e, jobject aConstructor);
-    
-    ~JavaConstructor() {
-        delete [] _parameters;
-    };
-
-    void _commonCopy(const JavaConstructor &other) {
-        _numParameters = other._numParameters;
-        _parameters = new JavaParameter[_numParameters];
-        int i;
-        for (i = 0; i < _numParameters; i++) {
-            _parameters[i] = other._parameters[i];
-        }
-    }
-    
-    JavaConstructor(const JavaConstructor &other) : Constructor() {
-        _commonCopy (other);
-    };
-
-    JavaConstructor &operator=(const JavaConstructor &other)
-    {
-        if (this == &other)
-            return *this;
-            
-        delete [] _parameters;
-        
-        _commonCopy (other);
-
-        return *this;
-    }
-
-    virtual Parameter *parameterAt(int i) const { return &_parameters[i]; };
-    virtual int numParameters() const { return _numParameters; };
-    
-private:
-    JavaParameter *_parameters;
-    int _numParameters;
-};
-
-
 class JavaField : public Field
 {
 public:
     JavaField() : _field(0) {};
     JavaField (JNIEnv *env, jobject aField);
 
-    JavaField(const JavaField &other) : 
-        Field(), _name(other._name), _type(other._type) {};
-
-    JavaField &operator=(const JavaField &other)
-    {
-        if (this == &other)
-            return *this;
-            
-        _name = other._name;
-        _type = other._type;
-        _field = other._field;
-
-        return *this;
-    }
-    
     virtual JSValue *valueFromInstance(ExecState *exec, const Instance *instance) const;
     virtual void setValueToInstance(ExecState *exec, const Instance *instance, JSValue *aValue) const;
     
index 3f20e5ba97032013f5b850f9ac50bac779049715..3faee188e176c3612dcc60c8135799f82681c149 100644 (file)
@@ -47,9 +47,6 @@ public:
 
     virtual JSValue *fallbackObject(ExecState *exec, Instance *instance, const Identifier &propertyName);
     
-    virtual Constructor *constructorAt(int) const { return 0; }
-    virtual int numConstructors() const { return 0; }
-    
     ClassStructPtr isa() { return _isa; }
     
 private:
index 6809bf38e28f2bb49799920aa54b280d36990e09..a87b89b4d1ecfee7220ccf0ac4dbc3a0bae5d48b 100644 (file)
@@ -54,18 +54,6 @@ public:
     virtual ~Parameter() {}
 };
 
-// FIXME:  Constructor should be removed from abstract runtime classes
-// unless we want to support instantiation of runtime objects from
-// JavaScript.
-class Constructor
-{
-public:
-    virtual Parameter* parameterAt(int i) const = 0;
-    virtual int numParameters() const = 0;
-
-    virtual ~Constructor() {}
-};
-
 class Field
 {
 public:
@@ -114,9 +102,6 @@ public:
     
     virtual MethodList methodsNamed(const Identifier&, Instance*) const = 0;
     
-    virtual Constructor *constructorAt(int i) const = 0;
-    virtual int numConstructors() const = 0;
-    
     virtual Field *fieldNamed(const Identifier&, Instance*) const = 0;
 
     virtual JSValue* fallbackObject(ExecState*, Instance*, const Identifier&) { return jsUndefined(); }