private void PopOperations() { for (int i = 0; i < Operations.Count; i++) { PropertyOperationCollection propertyOperations = Operations[i]; for (int j = propertyOperations.Count - 1; j >= 0; j--) { if (propertyOperations[j].Depth == Depth) { propertyOperations.RemoveAt(j); } } } }
private void PushOperations(XElement element) { foreach (IPropertyOperation operation in CreateOperationsFromElement(element)) { Operations = Operations ?? new StringKeyedCollection <PropertyOperationCollection>(); if (!Operations.TryGetValue(operation.PropertyName, out PropertyOperationCollection propertyOperations)) { propertyOperations = new PropertyOperationCollection(operation.PropertyDefinition); Operations.Add(propertyOperations); } propertyOperations.Add(operation); } }