mirror of https://github.com/mono/CppSharp.git
				
				
			
				 8 changed files with 100 additions and 15 deletions
			
			
		@ -0,0 +1,36 @@
				@@ -0,0 +1,36 @@
					 | 
				
			||||
using CppSharp.AST; | 
				
			||||
using CppSharp.Passes; | 
				
			||||
 | 
				
			||||
namespace CppSharp.Passes | 
				
			||||
{ | 
				
			||||
    public class IgnoreMoveConstructorsPass : TranslationUnitPass | 
				
			||||
    { | 
				
			||||
        public IgnoreMoveConstructorsPass() | 
				
			||||
        { | 
				
			||||
            VisitOptions.VisitClassBases = false; | 
				
			||||
            VisitOptions.VisitClassFields = false; | 
				
			||||
            VisitOptions.VisitClassProperties = false; | 
				
			||||
            VisitOptions.VisitEventParameters = false; | 
				
			||||
            VisitOptions.VisitFunctionParameters = false; | 
				
			||||
            VisitOptions.VisitFunctionReturnType = false; | 
				
			||||
            VisitOptions.VisitNamespaceEnums = false; | 
				
			||||
            VisitOptions.VisitNamespaceEvents = false; | 
				
			||||
            VisitOptions.VisitNamespaceVariables = false; | 
				
			||||
            VisitOptions.VisitTemplateArguments = false; | 
				
			||||
        } | 
				
			||||
 | 
				
			||||
        public override bool VisitMethodDecl(Method method) | 
				
			||||
        { | 
				
			||||
            if (!base.VisitMethodDecl(method)) | 
				
			||||
                return false; | 
				
			||||
 | 
				
			||||
            if (method.IsMoveConstructor) | 
				
			||||
            { | 
				
			||||
                method.ExplicitlyIgnore(); | 
				
			||||
                return true; | 
				
			||||
            } | 
				
			||||
 | 
				
			||||
            return false; | 
				
			||||
        } | 
				
			||||
    } | 
				
			||||
} | 
				
			||||
					Loading…
					
					
				
		Reference in new issue