예제 #1
0
            public static PreProcessorDirective GetEndRegion(AstNode rootNode, PreProcessorDirective regionDirective)
            {
                var visitor = new DirectiveSearcher(regionDirective);

                rootNode.AcceptVisitor(visitor);
                return(visitor.endregion);
            }
예제 #2
0
        public IEnumerable <CodeAction> GetActions(RefactoringContext context)
        {
            var directive = GetDirective(context);

            if (directive == null)
            {
                yield break;
            }
            var endDirective = DirectiveSearcher.GetEndRegion(context.RootNode, directive);

            if (endDirective == null)
            {
                yield break;
            }
            yield return(new CodeAction(context.TranslateString("Remove region"), script => {
                script.Remove(directive);
                script.Remove(endDirective);
            }, directive));
        }
예제 #3
0
 public static PreProcessorDirective GetEndRegion(AstNode rootNode, PreProcessorDirective regionDirective)
 {
     var visitor = new DirectiveSearcher (regionDirective);
     rootNode.AcceptVisitor (visitor);
     return visitor.endregion;
 }