Microsoft.R.Editor.Tree.TextChangeAnalyzer.IsChangeDestructiveForChildNodes C# (CSharp) Method

IsChangeDestructiveForChildNodes() private static method

private static IsChangeDestructiveForChildNodes ( IAstNode node, ITextRange changedRange ) : bool
node IAstNode
changedRange ITextRange
return bool
        private static bool IsChangeDestructiveForChildNodes(IAstNode node, ITextRange changedRange) {
            if(changedRange.End <= node.Start || changedRange.Start >= node.End) {
                return false;
            }
            else if(node.Children.Count == 0) {
                return true;
            }

            bool result = false;
            foreach (var child in node.Children) {
                result |= IsChangeDestructiveForChildNodes(child, changedRange);
                if(result) {
                    break;
                }
            }

            return result;
        }