Esempio n. 1
0
        private bool StartsLongOperation(PXContext pxContext, Compilation compilation, SyntaxNode node, CancellationToken cancellation)
        {
            var walker = new StartLongOperationDelegateWalker(pxContext, compilation, cancellation);

            walker.Visit(node);

            return(walker.Delegates.Length > 0);
        }
Esempio n. 2
0
        private IEnumerable <SyntaxNode> GetLongOperationStartDelegates(ISymbol symbol, PXContext pxContext, Compilation compilation,
                                                                        CancellationToken cancellation)
        {
            cancellation.ThrowIfCancellationRequested();

            var loDelegateNodeList = new List <SyntaxNode>();
            var declaringNodes     = symbol.DeclaringSyntaxReferences
                                     .Select(r => r.GetSyntax(cancellation));

            foreach (var node in declaringNodes)
            {
                cancellation.ThrowIfCancellationRequested();

                var loStartWalker = new StartLongOperationDelegateWalker(pxContext, compilation, cancellation);

                loStartWalker.Visit(node);
                loDelegateNodeList.AddRange(loStartWalker.Delegates);
            }

            return(loDelegateNodeList);
        }