Browse Source

Merge pull request #140 from ddobrev/master

Use properties in structs as well
pull/145/head
João Matos 12 years ago
parent
commit
0dc1e2c02c
  1. 7
      src/Generator/Passes/MoveFunctionToClassPass.cs
  2. 5
      tests/Basic/Basic.cpp
  3. 2
      tests/Basic/Basic.h

7
src/Generator/Passes/MoveFunctionToClassPass.cs

@ -20,6 +20,9 @@ namespace CppSharp.Passes @@ -20,6 +20,9 @@ namespace CppSharp.Passes
if (@class != null)
MoveFunction(function, @class);
if (function.IsOperator)
function.ExplicityIgnored = true;
return true;
}
@ -43,6 +46,8 @@ namespace CppSharp.Passes @@ -43,6 +46,8 @@ namespace CppSharp.Passes
IsStatic = true
};
function.ExplicityIgnored = true;
if (method.OperatorKind != CXXOperatorKind.None)
{
var param = function.Parameters[0];
@ -54,8 +59,6 @@ namespace CppSharp.Passes @@ -54,8 +59,6 @@ namespace CppSharp.Passes
method.OriginalFunction = null;
}
function.ExplicityIgnored = true;
@class.Methods.Add(method);
}
}

5
tests/Basic/Basic.cpp

@ -207,3 +207,8 @@ int test(basic& s) @@ -207,3 +207,8 @@ int test(basic& s)
{
return 5;
}
Bar::Item operator |(Bar::Item left, Bar::Item right)
{
return left | right;
}

2
tests/Basic/Basic.h

@ -233,3 +233,5 @@ struct DLL_API TestDelegates @@ -233,3 +233,5 @@ struct DLL_API TestDelegates
DelegateInClass A;
DelegateInGlobalNamespace B;
};
DLL_API Bar::Item operator |(Bar::Item left, Bar::Item right);

Loading…
Cancel
Save