Source

pypy / pypy / translator / cli / dotnet.py

Author Commit Message Labels Comments Date
Armin Rigo
More.
Branches
exception-cannot-occur
Antonio Cuni
(in-progress) copy the cli backend from the oo-jit branch
Antonio Cuni
(arigo, antocuni) for the series "how can it ever worked", we need to test for ootype.String *before* testing for ootype.OOType.
Antonio Cuni
now it should really be possible to mix all record instances with System.Object instances
Antonio Cuni
add a way to cast an ootype._record to System.Object and back.
Antonio Cuni
fix two failing tests
Antonio Cuni
make sure we can mix the result of classof(cliClass) and classof(FUNCTYPE)
Antonio Cuni
another horrible hack to allow classof(FUNCTYPE). That's needed because in the JIT we really need to know the .NET type of StaticMethods.
Antonio Cuni
make sure we can compare the result of classof()
Antonio Cuni
add a way to store instances of System.Type as PBCs. It is a bit convoluted because it converts them into values of type ootype.Class, then it does a cast at runtime via box/clidowncast, but it's the best we can do until we refactor the way .NET is accessed within RPython.
Antonio Cuni
add support for FUNC5 and FUNC27, but the corresponding tests still crash for other reasons :-(
Antonio Cuni
make the cli jit backend using the new box/unbox interface to cast delegates to static methods. Moreover, FunctionConsts are now properly handled just like other ObjectConsts, instead of being stored into static fields of the old Constant class.
Antonio Cuni
use unbox() instead of clidowncast() to convert delegates to StaticMethods; now box/unbox are used to (almost) consistently convert from the OOType hierarchy to the CLI hierarchy and back.
Antonio Cuni
add support to box/unbox lowlevel instances and records; mostly useful to cast everything to System.Object and back
Antonio Cuni
make the result of fieldinfo_for_const working also as a pbc
Antonio Cuni
fieldinfo_for_const is a new function for getting the FieldInfo instance corresponding to the static field of the Constants clas where the constant resides.
Antonio Cuni
make the cli codegen using the new and better interface to handle dynamic delegates
Antonio Cuni
a much saner approach to handle dynamically generated delegates; they are converted to the equivalent StaticMethod, and called by indirect_call; this way, gencli automatically handles the generation of the corresponding delegate class. Hardcoded delegate classes are still used but only for testing, when we interprets things on pythonnet, so they have been moved to the pypy.test namespace.
Antonio Cuni
- first tentative to add support for GenConsts that contain objects; each of those is stored in a static field, but for now only a fixed number of those is available; - improve the automatic generation of Operations from the descriptions in cli/opcodes.py - as a result, some more tests pass :-)
Antonio Cuni
add support to set static fields of cli classes
Antonio Cuni
add the ability to call a delegate object with the usual () notation
Antonio Cuni
add an helper to allow downcasts of cli objects
Antonio Cuni
fix typeof of types defined in external assemblies
Antonio Cuni
- add support for reading static fields of .NET classes - add support to value types
Antonio Cuni
prebuild the namespaces and types hierarchy, else the annotator gets confused because it thinks some getattr will fail.
Antonio Cuni
a big refactoring of query.py. Now info about types are loaded per-assembly instead of per-class, and they are not cached in pypy/_cache; this is much faster, and removes all that crappy [cli:query] logs.
Antonio Cuni
a hack to be able to construct delegates of type EventHandler from RPython
Armin Rigo
Merge of the clr-module-improvements branch.
Carl Friedrich Bolz
continue the move of pypy.annotation.pairtype to pypy.tool.pairtype: fix imports and kill the import forwarding file.
Antonio Cuni
let CliClass to be used in @export
  1. Prev
  2. 1
  3. 2
  4. 3
  5. Next