337 Commits (d3d98dc0e8199690cb31f9a35569edbaba52c57f)

Author SHA1 Message Date
Dimitar Dobrev c45c015a75 Reused the method for generating a string representation of an access qualifier. 12 years ago
Dimitar Dobrev ef53ca17d3 Added a block kind for an interface. 12 years ago
Dimitar Dobrev c5382ee666 Changed a bit the method for a class definition to be able to reuse it for interfaces. 12 years ago
Dimitar Dobrev 3a9eef1e80 Added a new pass converting all parameter types to their respective interfaces, if any. 12 years ago
Dimitar Dobrev 6ef578cd6a Removed the generation of protected members of interfaces. 12 years ago
Dimitar Dobrev f07ddf79fc Replaced the vague checks for explicit interface impls with a specific property. 12 years ago
Dimitar Dobrev c9e5c0d505 Completed the parallel hierarchy of interfaces so that a derived class can access the members of all of its bases. 12 years ago
Dimitar Dobrev 068cf51165 Added explicit implementation of interface properties (when necessary). 12 years ago
Dimitar Dobrev f5304e69bb Completed the support for multiple inheritance with the exception of base interfaces and the cast operator in the derived class to the second or later base. 12 years ago
Dimitar Dobrev 6f3224ca60 Changed writable indexers of primitive types to use the types themselves instead of pointers. 12 years ago
Dimitar Dobrev 6edc1ac19b Marshalled pointers to primitive types as such instead of using IntPtr. 12 years ago
Dimitar Dobrev b82aebab3a Added support for writing using indexers. 12 years ago
Dimitar Dobrev 54c93f4d91 Added support for read-only [] operators. 12 years ago
triton 66ef3c55ff Reworked support for out parameters in both backends and added a test. 12 years ago
Dimitar Dobrev 348c3db122 Fixed the v-table interop to be compilable. 12 years ago
Dimitar Dobrev 1532f7d0bf Moved the changing of access modifiers of constructors of abstract classes to the pass for internal implementations of abstract classes. 12 years ago
Dimitar Dobrev fddcea0405 Fixed the regression caused by methods always returning null regardless of the return type. 12 years ago
Dimitar Dobrev de8b3fc00e Corrected the checks for private methods because overrides must be allowed through regardless of access. 12 years ago
Dimitar Dobrev 840e3c93cf Corrected the access modifier of overridden methods because in C++ overriding may change access. 12 years ago
Dimitar Dobrev 22355f64ed Corrected the access modifiers of methods, delegates and properties. 12 years ago
Dimitar Dobrev b6d4f0f97b Fixed a regression caused by the returning of null. 12 years ago
Dimitar Dobrev 1c793ef589 Commented the pass about internal impls of abstract classes. Cosmetic fixes. 12 years ago
Dimitar Dobrev 816c946790 Added a hard-coded for the time being option indicating whether the wrapped lib is 32-bit and used that option to generate the v-table offsets. 12 years ago
Dimitar Dobrev 19cb1f5470 Added an off by default option for generating abstract implementations because the MS ABI branch does not always work. 12 years ago
Dimitar Dobrev 463864e71c Moved the generation of a virtual table call to a separate function, for independence on back-ends. 12 years ago
Dimitar Dobrev 449777e245 Replaced a hard-coded variable name. 12 years ago
Dimitar Dobrev dfff92bb9f Moved the getting of the access of a class as a string to a separate function. 12 years ago
Dimitar Dobrev da6887ff07 Fixed the allocation of internal abstract implementations, and fixed their constructors to take a pointer to the abstract type. 12 years ago
Dimitar Dobrev 4cfcfa1b16 Corrected the implementation of abstract methods to properly handle classes, instance arguments and indirect return types. 12 years ago
Dimitar Dobrev 9752096a4c Fixed a bug in MS mode and added a test. 12 years ago
Dimitar Dobrev 06e69225b9 Implemented the MS branch of the abstract implementations. 12 years ago
Dimitar Dobrev a3869c95c5 Generated the proper return statements in the abstract implementations. 12 years ago
Dimitar Dobrev 6d2c0eaed8 Generated internal implementations of abstract classes in a new pass. 12 years ago
triton c93e77166c Added a new option GenerateInternalImports that outputs "__Internal" as the library name for DllImports. Fixes #54. 12 years ago
triton 365862419e Fixed support for classes with trivial default constructors. 12 years ago
triton 279c9c83cf Fixed wrapping of null pointers to actually return null CLR references. 12 years ago
Dimitar Dobrev 1fc9880be9 Generated the correct calling convention in the UnmanagedFunctionPointerAttribute of delegates. 12 years ago
Dimitar Dobrev b06f206878 Fixed the generation of static function to use the correct return type. 12 years ago
Dimitar Dobrev 0ae181b2cf Added suffixes to generated variables to avoid conflicts. 12 years ago
Dimitar Dobrev fbe5851237 Added UnmanagedFunctionPointerAttribute to generated delegates to avoid run-time crashes. 12 years ago
triton e8f219c81c Use foreach instead of explicit for. 12 years ago
triton 8c0c76ca59 Reworked operator overloading support. 12 years ago
triton c8abdeb192 Cleaned up operator overload helpers. 12 years ago
triton 6c1e8fdbbf When generating the internal name for a function, take into account its original function. 12 years ago
triton df01104ab7 Fixed GetFunctionNativeIdentifier to work with function operators. 12 years ago
triton a964df9069 Renamed HiddenStructureReturn to IndirectReturnType as it is a lot more clear. 12 years ago
Dimitar Dobrev 5208fafef7 Moved GeneratedIdentifier to the base Generator so that the former is available to all back-ends. 12 years ago
Dimitar Dobrev cd65094792 Fixed the generation of virtual tables to use the new format of internal generated identifiers. 12 years ago
Dimitar Dobrev 8312ff0a20 Removed the hard-coded "ret" variable. 12 years ago
Dimitar Dobrev 01d3779e2b Corrected the generation of the native constructor when in a structure. 12 years ago