Update of /cvsroot/jython/jython/org/python/core
In directory usw-pr-cvs1:/tmp/cvs-serv21563
Modified Files:
PyJavaClass.java __builtin__.java
Log Message:
minimal changes to core for jreload. should be safe.
Index: PyJavaClass.java
===================================================================
RCS file: /cvsroot/jython/jython/org/python/core/PyJavaClass.java,v
retrieving revision 2.28
retrieving revision 2.29
diff -C2 -r2.28 -r2.29
*** PyJavaClass.java 2000/12/16 13:37:14 2.28
--- PyJavaClass.java 2001/01/15 04:44:33 2.29
***************
*** 19,22 ****
--- 19,25 ----
}
+ public static final boolean isLazy(PyJavaClass jc) { // ?? for jreload
+ return jc.proxyClass == null;
+ }
public static final PyJavaClass lookup(String name,PackageManager mgr) {
***************
*** 794,798 ****
public Object __tojava__(Class c) {
! initialize();
return super.__tojava__(c);
}
--- 797,801 ----
public Object __tojava__(Class c) {
! if (c != PyJavaClass.class) initialize(); // ?? for isLazy
return super.__tojava__(c);
}
Index: __builtin__.java
===================================================================
RCS file: /cvsroot/jython/jython/org/python/core/__builtin__.java,v
retrieving revision 2.22
retrieving revision 2.23
diff -C2 -r2.22 -r2.23
*** __builtin__.java 2000/12/11 18:43:15 2.22
--- __builtin__.java 2001/01/15 04:44:33 2.23
***************
*** 59,62 ****
--- 59,66 ----
case 9:
return __builtin__.apply(arg1, arg2);
+ case 10:
+ if (!(arg2 instanceof PyClass))
+ throw Py.TypeError("isinstance(): 2nd arg is not a class");
+ return Py.newBoolean(__builtin__.isinstance(arg1,(PyClass) arg2));
default:
throw argCountError(2);
***************
*** 117,120 ****
--- 121,125 ----
dict.__setitem__("tuple", new BuiltinFunctions("tuple", 8, 1));
dict.__setitem__("apply", new BuiltinFunctions("apply", 9, 2, 3));
+ dict.__setitem__("isinstance", new BuiltinFunctions("isinstance", 10, 2)); // ?? for jreload
dict.__setitem__("__import__", new ImportFunction());
}
|