示例#1
0
        public bool Matches(ITreeNode node, INodeMatchingContext ctx)
        {
            var unityApi = node.GetSolution().GetComponent <UnityApi>();

            if (node is IMultipleFieldDeclaration multipleFieldDeclaration)
            {
                foreach (var multipleDeclarationMember in multipleFieldDeclaration.DeclaratorsEnumerable)
                {
                    if (multipleDeclarationMember is IFieldDeclaration field)
                    {
                        if (unityApi.IsSerialisedField(field.DeclaredElement))
                        {
                            return(true);
                        }
                    }
                }
            }

            if (node is IFieldDeclaration fieldDeclaration)
            {
                return(unityApi.IsSerialisedField(fieldDeclaration.DeclaredElement));
            }

            return(false);
        }
示例#2
0
        public bool Matches(ITreeNode node, INodeMatchingContext ctx)
        {
            if (node is IMethodDeclaration methodDeclaration)
            {
                var unityApi = node.GetSolution().GetComponent <UnityApi>();
                return(unityApi.IsEventFunction(methodDeclaration.DeclaredElement));
            }

            return(false);
        }
        public bool Matches(ITreeNode node, INodeMatchingContext ctx)
        {
            if (!(node is IDeclaration declaration))
            {
                return(false);
            }
            var unityApi = node.GetSolution().GetComponent <UnityApi>();

            return(unityApi.IsUnityType(declaration.DeclaredElement as ITypeElement) ||
                   unityApi.IsSerializableTypeDeclaration(declaration.DeclaredElement as ITypeElement));
        }