Ejemplo n.º 1
0
        private void TryNotifyConstructorFound(CXXRecordDecl caller, FunctionTemplateDecl functionTemplate)
        {
            // TODO: Friend containers?
            if (functionTemplate.Access != CX_CXXAccessSpecifier.CX_CXXPublic)
            {
                return;
            }

            CtorFound?.Invoke(functionTemplate.TemplateParameters,
                              functionTemplate.CursorChildren.Where(child => child.CursorKind == CXCursorKind.CXCursor_ParmDecl).Cast <ParmVarDecl>().ToList());
        }
Ejemplo n.º 2
0
        private void TryNotifyConstructorFound(CXXRecordDecl caller, FunctionDecl constructor)
        {
            // If no body, error out (= delete)
            if (constructor.IsInvalidDecl || constructor.Body == null)
            {
                return;
            }

            // TODO: Friend containers?
            if (constructor.Access != CX_CXXAccessSpecifier.CX_CXXPublic)
            {
                return;
            }

            CtorFound?.Invoke(null, constructor.Parameters.ToList());
        }