[pypy-svn] r28473 - in pypy/dist/pypy/translator/cli: . src
antocuni at codespeak.net
antocuni at codespeak.net
Wed Jun 7 18:52:28 CEST 2006
Author: antocuni
Date: Wed Jun 7 18:52:27 2006
New Revision: 28473
Modified:
pypy/dist/pypy/translator/cli/opcodes.py
pypy/dist/pypy/translator/cli/src/pypylib.cs
Log:
Added support for 'subclassof'
Modified: pypy/dist/pypy/translator/cli/opcodes.py
==============================================================================
--- pypy/dist/pypy/translator/cli/opcodes.py (original)
+++ pypy/dist/pypy/translator/cli/opcodes.py Wed Jun 7 18:52:27 2006
@@ -48,6 +48,7 @@
'oois': 'ceq',
'oononnull': [PushAllArgs, 'ldnull', 'ceq']+Not,
'instanceof': [CastTo, 'ldnull', 'cgt.un'],
+ 'subclassof': [PushAllArgs, 'call bool [pypylib]pypy.runtime.Utils::SubclassOf(class [mscorlib]System.Type, class[mscorlib]System.Type)'],
'same_as': DoNothing, # TODO: does same_as really do nothing else than renaming?
'direct_call': [Call],
Modified: pypy/dist/pypy/translator/cli/src/pypylib.cs
==============================================================================
--- pypy/dist/pypy/translator/cli/src/pypylib.cs (original)
+++ pypy/dist/pypy/translator/cli/src/pypylib.cs Wed Jun 7 18:52:27 2006
@@ -35,6 +35,11 @@
{
return t.GetConstructor(new Type[0]).Invoke(new object[0]);
}
+
+ public static bool SubclassOf(Type a, Type b)
+ {
+ return (a == b || a.IsSubclassOf(b));
+ }
}
//The public interface List must implement is defined in
More information about the Pypy-commit
mailing list