Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / Xml / System / Xml / Dom / XmlChildEnumerator.cs / 1305376 / XmlChildEnumerator.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// [....]
//-----------------------------------------------------------------------------
namespace System.Xml {
using System.Collections;
internal sealed class XmlChildEnumerator: IEnumerator {
internal XmlNode container;
internal XmlNode child;
internal bool isFirst;
internal XmlChildEnumerator( XmlNode container ) {
this.container = container;
this.child = container.FirstChild;
this.isFirst = true;
}
bool IEnumerator.MoveNext() {
return this.MoveNext();
}
internal bool MoveNext() {
if (isFirst) {
child = container.FirstChild;
isFirst = false;
}
else if (child != null) {
child = child.NextSibling;
}
return child != null;
}
void IEnumerator.Reset() {
isFirst = true;
child = container.FirstChild;
}
object IEnumerator.Current {
get {
return this.Current;
}
}
internal XmlNode Current {
get {
if (isFirst || child == null)
throw new InvalidOperationException(Res.GetString(Res.Xml_InvalidOperation));
return child;
}
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
// [....]
//-----------------------------------------------------------------------------
namespace System.Xml {
using System.Collections;
internal sealed class XmlChildEnumerator: IEnumerator {
internal XmlNode container;
internal XmlNode child;
internal bool isFirst;
internal XmlChildEnumerator( XmlNode container ) {
this.container = container;
this.child = container.FirstChild;
this.isFirst = true;
}
bool IEnumerator.MoveNext() {
return this.MoveNext();
}
internal bool MoveNext() {
if (isFirst) {
child = container.FirstChild;
isFirst = false;
}
else if (child != null) {
child = child.NextSibling;
}
return child != null;
}
void IEnumerator.Reset() {
isFirst = true;
child = container.FirstChild;
}
object IEnumerator.Current {
get {
return this.Current;
}
}
internal XmlNode Current {
get {
if (isFirst || child == null)
throw new InvalidOperationException(Res.GetString(Res.Xml_InvalidOperation));
return child;
}
}
}
}
// 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
- OracleException.cs
- MouseGestureConverter.cs
- ProgressChangedEventArgs.cs
- ServiceMetadataContractBehavior.cs
- ServiceElement.cs
- WmiEventSink.cs
- ColorAnimationUsingKeyFrames.cs
- SiteMapNode.cs
- HostSecurityManager.cs
- SurrogateDataContract.cs
- RadioButtonBaseAdapter.cs
- WebServicesDescriptionAttribute.cs
- RtfToken.cs
- InheritanceContextChangedEventManager.cs
- XamlSerializerUtil.cs
- FixedPageAutomationPeer.cs
- EventSinkHelperWriter.cs
- IndependentAnimationStorage.cs
- SwitchAttribute.cs
- XPathParser.cs
- GlobalItem.cs
- FilterFactory.cs
- MemberHolder.cs
- ColumnWidthChangedEvent.cs
- TextOnlyOutput.cs
- SrgsElementFactory.cs
- UpdateCompiler.cs
- DateTimeOffsetAdapter.cs
- HorizontalAlignConverter.cs
- DocumentStream.cs
- FileDialog_Vista.cs
- ThemeableAttribute.cs
- EdmScalarPropertyAttribute.cs
- MembershipSection.cs
- TemplateControlCodeDomTreeGenerator.cs
- DPTypeDescriptorContext.cs
- DbInsertCommandTree.cs
- ProcessManager.cs
- BaseTreeIterator.cs
- DependencySource.cs
- XsltQilFactory.cs
- DocumentViewerBase.cs
- XmlReflectionImporter.cs
- AuthenticatingEventArgs.cs
- LocalValueEnumerator.cs
- MetadataArtifactLoaderFile.cs
- JapaneseCalendar.cs
- WindowsGraphics2.cs
- HtmlInputPassword.cs
- IsolatedStorageException.cs
- DataColumnCollection.cs
- SerializationStore.cs
- XslAstAnalyzer.cs
- LocalBuilder.cs
- FlagPanel.cs
- MembershipUser.cs
- SlipBehavior.cs
- DataServiceStreamResponse.cs
- ExpressionContext.cs
- ControlUtil.cs
- SoapIgnoreAttribute.cs
- CurrentChangedEventManager.cs
- HyperLinkField.cs
- Pipe.cs
- RSAPKCS1KeyExchangeDeformatter.cs
- SafeRegistryHandle.cs
- CredentialCache.cs
- ObjectQueryProvider.cs
- Pen.cs
- ListBox.cs
- ISCIIEncoding.cs
- UpdateProgress.cs
- EntityDataSource.cs
- DllNotFoundException.cs
- ButtonFlatAdapter.cs
- HtmlInputCheckBox.cs
- altserialization.cs
- PopupRoot.cs
- PersonalizationEntry.cs
- ImageClickEventArgs.cs
- HtmlForm.cs
- StrokeCollectionConverter.cs
- DecimalStorage.cs
- XMLSyntaxException.cs
- ItemsControl.cs
- TailPinnedEventArgs.cs
- ThicknessAnimation.cs
- Transform.cs
- NameScopePropertyAttribute.cs
- TextTabProperties.cs
- ApplicationFileParser.cs
- SimpleApplicationHost.cs
- COM2ComponentEditor.cs
- EncoderParameters.cs
- LinkedResource.cs
- SiteMapNode.cs
- FrameworkElementFactory.cs
- Oid.cs
- UpdateDelegates.Generated.cs
- SubclassTypeValidator.cs