@ -44,7 +44,7 @@ namespace CppSharp.Passes
@@ -44,7 +44,7 @@ namespace CppSharp.Passes
private void CheckInvalidOperators ( Class @class )
{
foreach ( var @operator in @class . Operators )
foreach ( var @operator in @class . Operators . Where ( o = > ! o . Ignore ) )
{
if ( ! IsValidOperatorOverload ( @operator ) )
{
@ -84,23 +84,19 @@ namespace CppSharp.Passes
@@ -84,23 +84,19 @@ namespace CppSharp.Passes
}
private static void CreateIndexer ( Class @class , Method @operator )
{
if ( @class . Properties . All ( p = > p . Parameters . Count = = 0 | |
p . Parameters [ 0 ] . QualifiedType ! = @operator . Parameters [ 0 ] . QualifiedType ) )
{
Property property = new Property
{
Name = "Item" ,
QualifiedType = @operator . ReturnType ,
Access = @operator . Access ,
Namespace = @class
Namespace = @class ,
GetMethod = @operator
} ;
property . GetMethod = @operator ;
property . Parameters . AddRange ( @operator . Parameters ) ;
@class . Properties . Add ( property ) ;
@operator . IsGenerated = false ;
}
}
static void HandleMissingOperatorOverloadPair ( Class @class , CXXOperatorKind op1 ,
CXXOperatorKind op2 )