triton
7faa50d945
Fixed native symbol naming.
...
We now properly name the internal ctor declarations by constructor type.
We also now keep an index for each function that is used to unique their native name.
12 years ago
Øystein Krog
e0812abbd7
Move helper methods in Class out from class and into extension class ClassExtensions
12 years ago
Øystein Krog
d3e963ff19
Move helper methods in Type out from class and into extension class TypeExtensions
12 years ago
triton
0a102d8fbc
Added better wrapping for static classes.
12 years ago
Dimitar Dobrev
e08f2083f8
Worked around a bug of some incomplete classes having empty complete declarations.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
cfeed2619a
Extended type maps with the ability to insert custom code instead of a copy ctor invocation.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
triton
0954ad0c7e
Fixed destructors by keeping track when they are non-trivial.
12 years ago
triton
af3327a43d
Removed unused constructor from BaseClassSpecifier.
12 years ago
triton
3fd94bf482
Added better support for destructors.
...
Also changed the native identifier mangling scheme to add some shorthand for the type of special method. This makes it simpler to read through the generated binding code.
Hopefully fixes #142 .
12 years ago
triton
ec8d33d3cb
Fixed GetFunctionOverloads to work for class operators too.
12 years ago
Dimitar Dobrev
dd317c6987
Ignored the case when matching methods because of the bug about non-shared v-table entries.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
7ecafc9858
Prevented renaming of methods when a base class has a property of the same name. Made the delegates used in abstract implementations prefixed with an underscore and internal.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
0e37a62726
Changed the check whether to invoke a property in the v-tables to work around the non-shared methods in v-tables. Set the function signature to an empty string rather that null by default.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Stephen Kennedy
00bf3714ca
Hack to silently ignore non-class base class (e.g. templates etc)
12 years ago
Dimitar Dobrev
824d8b5f30
Rewrote the generating of properties to additionaly handle property overrides and read-only properties.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
12 years ago
Dimitar Dobrev
813084948f
Fixed the resolution of overloads for conversion operators.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
13 years ago
Dimitar Dobrev
593aac162e
Added a new class type "Interface".
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
13 years ago
Dimitar Dobrev
1962751cb8
Stored the original class in its interface replacement used with multiple inheritance.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
13 years ago
Dimitar Dobrev
ffbc5fbf15
Fixed the check for duplicates to account for explicit impls. Fixed the getting of a root base method and property to consider the parameter for all bases.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
13 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.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
13 years ago
Dimitar Dobrev
5e9de92b78
Fixed a bug in the getting of the root base method: the bases after the first one were ignored.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
13 years ago
Dimitar Dobrev
068cf51165
Added explicit implementation of interface properties (when necessary).
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
13 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.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
13 years ago
Dimitar Dobrev
840e3c93cf
Corrected the access modifier of overridden methods because in C++ overriding may change access.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
13 years ago
triton
3b63a1a2be
Added default constructors triviality information to the AST.
13 years ago
Dimitar Dobrev
bb07a294f4
Ignored private types.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
13 years ago
Dimitar Dobrev
7971d0a33e
Fixed the generation of unions by considering all unions non-reference types.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
13 years ago
triton
02f5d0731a
Classes in AST now keep if they have non trivial copy constructors.
13 years ago
triton
7d1bf939f5
Remove unused usings.
13 years ago
Dimitar Dobrev
58b2529df3
A simple prototype for supporting unions.
...
Signed-off-by: Dimitar Dobrev <dpldobrev@yahoo.com>
13 years ago
triton
752cfa4869
Added IsDynamic and IsPolymorphic data to classes.
13 years ago
triton
dbd9fbc9d5
Added v[f]table parsing support.
13 years ago
triton
68ddfbdd6f
Move the AST project to the CppSharp.AST namespace.
13 years ago
triton
c488dcbfde
Prefix all the libraries and project names with CppSharp.
13 years ago
triton
13b225e31e
Fixed the FindHierarchy to walk the declarations top-down instead of bottom-up, which is the expected behavior for the users of this method. This makes sure when searching for methods we find the one from the top classes first, instead of the base ones.
13 years ago
triton
53bce57b19
Added parsing of access specifiers in methods.
...
This lets us keep track of groups of methods in the order they were declared in the native class which is useful to bind some libraries, like Qt which uses non-standard constructs like Q_SIGNALS. Since we now also keep track of macro expansions in declarations this gives us the information needed to deal with those cases correctly.
13 years ago
triton
e57c435426
Fixed some incorrect behavior with nested types in the CheckAmbiguousOverloads pass by fixing GetFunctionOverloads to be dynamically dispatched instead of using some weird manual type checking.
13 years ago
triton
4c45531cc0
Use the new keyword to tell the compiler we are hiding the GetFunctionOverloads overload.
13 years ago
triton
e1ac13601c
Added a new abstract class DeclarationContext that acts as a container for declarations and make Class and Namespace inherit from it.
13 years ago
triton
2127848d47
Added an helper method to find declarations hierarchically.
13 years ago
triton
46d9978401
Class helper methods now return proper lazy IEnumerable<> instead of converting right away to lists.
13 years ago
triton
5e4d263bb6
Added an helper method to find methods in a class by their original name.
13 years ago
triton
cc8f7cd1db
Renamed Cxxi references to CppSharp.
13 years ago
triton
dbf7b7bf28
Added an helper property to get the base class of a class.
13 years ago
triton
a14338a8c9
Added much improved support for operator overloading in the C# backend.
13 years ago
triton
d1915d033c
Actually get the layout information for each class in the parser.
13 years ago
triton
09b5863b5e
Added parsing support for class function templates and added parsing of template parameters.
13 years ago
triton
9f029047ad
Added parsing, AST and visitor stubs support for (class static) variables.
13 years ago
triton
25ae63013b
Added helper property to check if class has a base.
13 years ago
triton
bb4085fc5f
Added support for events in the AST.
13 years ago