Пример #1
0
        private object ConvertMethodAnnotation(ApexAnnotationSyntax node)
        {
            // annotations
            if (node.Identifier == "Test")
            {
                return(new ApexAnnotationSyntax
                {
                    Identifier = ApexKeywords.IsTest,
                    Parameters = node.Parameters,
                });
            }
            else if (node.Identifier == "SetUp")
            {
                return(new ApexAnnotationSyntax
                {
                    Identifier = ApexKeywords.TestSetup,
                    Parameters = node.Parameters,
                });
            }

            // modifiers
            else if (node.Identifier == "WebService")
            {
                return(ApexKeywords.WebService);
            }
            else if (node.Identifier == "Global")
            {
                return(ApexKeywords.Global);
            }

            return(node);
        }
Пример #2
0
        private object ConvertClassAnnotation(ApexAnnotationSyntax node)
        {
            // annotations
            if (node.Identifier == "TestFixture")
            {
                return(new ApexAnnotationSyntax
                {
                    Identifier = ApexKeywords.IsTest,
                    Parameters = node.Parameters,
                });
            }

            // modifiers
            else if (node.Identifier == "Global")
            {
                return(ApexKeywords.Global);
            }
            else if (node.Identifier == "WithSharing")
            {
                return($"{ApexKeywords.With} {ApexKeywords.Sharing}");
            }
            else if (node.Identifier == "WithoutSharing")
            {
                return($"{ApexKeywords.Without} {ApexKeywords.Sharing}");
            }

            return(node);
        }
Пример #3
0
        private object ConvertParameterAnnotation(ApexAnnotationSyntax node)
        {
            // modifiers
            if (node.Identifier == "Final")
            {
                return(ApexKeywords.Final);
            }

            return(node);
        }
Пример #4
0
        private object ConvertFieldAnnotation(ApexAnnotationSyntax node)
        {
            // modifiers
            if (node.Identifier == "Transient")
            {
                return(ApexKeywords.Transient);
            }

            return(node);
        }
Пример #5
0
        public override void VisitAttribute(AttributeSyntax node)
        {
            var annotation = new ApexAnnotationSyntax
            {
                Identifier = node.Name.ToString(),
            };

            if (node.ArgumentList != null)
            {
                node.ArgumentList.Accept(this);
                if (!LastAttributeArgumentList.IsNullOrEmpty())
                {
                    annotation.Parameters     = string.Join(" ", LastAttributeArgumentList);
                    LastAttributeArgumentList = null;
                }
            }

            LastAnnotation = annotation;
        }