Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataEntity / System / Data / Query / InternalTrees / NodeCounter.cs / 1305376 / NodeCounter.cs
//---------------------------------------------------------------------- //// Copyright (c) Microsoft Corporation. All rights reserved. // // // @owner [....] // @backupOwner [....] //--------------------------------------------------------------------- using System; using System.Collections.Generic; using System.Globalization; using System.Diagnostics; using System.Data.Common; using md=System.Data.Metadata.Edm; namespace System.Data.Query.InternalTrees { ////// Counts the number of nodes in a tree /// internal class NodeCounter : BasicOpVisitorOfT{ /// /// Public entry point - Calculates the nubmer of nodes in the given subTree /// /// ///internal static int Count(Node subTree) { NodeCounter counter = new NodeCounter(); return counter.VisitNode(subTree); } /// /// Common processing for all node types /// Count = 1 (self) + count of children /// /// ///protected override int VisitDefault(Node n) { int count = 1; foreach (Node child in n.Children) { count += VisitNode(child); } return count; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- OuterGlowBitmapEffect.cs
- XmlSchemaAnyAttribute.cs
- MemberListBinding.cs
- WebPartCancelEventArgs.cs
- CommonDialog.cs
- SHA384Managed.cs
- TaskFileService.cs
- Int32Storage.cs
- AttributeCollection.cs
- PagesChangedEventArgs.cs
- ContentValidator.cs
- CodeSnippetStatement.cs
- AnnotationService.cs
- ISFTagAndGuidCache.cs
- SingleQueryOperator.cs
- ValidationSummary.cs
- PresentationAppDomainManager.cs
- TraceContext.cs
- TypeDescriptionProviderAttribute.cs
- ExcCanonicalXml.cs
- EnumerableCollectionView.cs
- Events.cs
- EnumType.cs
- wgx_sdk_version.cs
- TypeContext.cs
- WmiEventSink.cs
- RegionInfo.cs
- activationcontext.cs
- MethodBody.cs
- PersonalizationState.cs
- DispatchOperationRuntime.cs
- Literal.cs
- OleDbWrapper.cs
- FlowDocumentPage.cs
- NullableBoolConverter.cs
- ComPlusAuthorization.cs
- DebugView.cs
- ContextProperty.cs
- _ListenerRequestStream.cs
- WsiProfilesElement.cs
- ListDataBindEventArgs.cs
- TransformConverter.cs
- Deserializer.cs
- _SslSessionsCache.cs
- MarkupCompilePass1.cs
- DataGridViewCellValueEventArgs.cs
- ToolboxBitmapAttribute.cs
- PropertyEmitterBase.cs
- Root.cs
- ThicknessConverter.cs
- Calendar.cs
- BindingExpressionUncommonField.cs
- TaskCanceledException.cs
- NativeMethods.cs
- DESCryptoServiceProvider.cs
- ByteRangeDownloader.cs
- CodeTypeMember.cs
- NativeMethods.cs
- DomainConstraint.cs
- CodeTypeReferenceSerializer.cs
- BaseValidator.cs
- Compiler.cs
- HttpBrowserCapabilitiesWrapper.cs
- ScriptingJsonSerializationSection.cs
- EntityConnection.cs
- UIElementHelper.cs
- PtsHelper.cs
- ConsumerConnectionPointCollection.cs
- OrthographicCamera.cs
- TaskExceptionHolder.cs
- DPTypeDescriptorContext.cs
- PropertyConverter.cs
- IdentityModelDictionary.cs
- AutoResizedEvent.cs
- CheckBox.cs
- SchemaNames.cs
- XPathArrayIterator.cs
- SiteMapNodeItemEventArgs.cs
- WsatEtwTraceListener.cs
- GenericPrincipal.cs
- ProxyManager.cs
- WorkflowTransactionOptions.cs
- SafeThreadHandle.cs
- ConstantCheck.cs
- RotateTransform3D.cs
- DeploymentExceptionMapper.cs
- QueueProcessor.cs
- CodeDirectionExpression.cs
- PermissionAttributes.cs
- ChannelSinkStacks.cs
- Hash.cs
- RealizationDrawingContextWalker.cs
- BaseConfigurationRecord.cs
- PermissionSet.cs
- ArrayHelper.cs
- HtmlWindow.cs
- ChtmlTextWriter.cs
- ReflectionTypeLoadException.cs
- VirtualizingStackPanel.cs
- BehaviorEditorPart.cs