Code:
/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / Util / DoubleLink.cs / 1305376 / DoubleLink.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* * DoubleLink * * Copyright (c) 1998-1999, Microsoft Corporation * */ namespace System.Web.Util { using System.Runtime.Serialization.Formatters; internal class DoubleLink { internal DoubleLink _next, _prev; internal Object Item; internal DoubleLink() { _next = _prev = this; } internal DoubleLink(Object item) : this() { this.Item = item; } internal DoubleLink Next {get {return _next;}} internal void InsertAfter(DoubleLink after) { this._prev = after; this._next = after._next; after._next = this; this._next._prev = this; } internal void InsertBefore(DoubleLink before) { this._prev = before._prev; this._next = before; before._prev = this; this._prev._next = this; } internal void Remove() { this._prev._next = this._next; this._next._prev = this._prev; _next = _prev = this; } #if DBG internal virtual void DebugValidate() { Debug.CheckValid(this._next != this || this._prev == this, "Invalid link"); } internal virtual string DebugDescription(string indent) { string desc; desc = indent + "_next=" + _next + ", _prev=" + _prev + "\nItem="; desc += Debug.GetDescription(Item, indent + " "); return desc; } #endif } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* * DoubleLink * * Copyright (c) 1998-1999, Microsoft Corporation * */ namespace System.Web.Util { using System.Runtime.Serialization.Formatters; internal class DoubleLink { internal DoubleLink _next, _prev; internal Object Item; internal DoubleLink() { _next = _prev = this; } internal DoubleLink(Object item) : this() { this.Item = item; } internal DoubleLink Next {get {return _next;}} internal void InsertAfter(DoubleLink after) { this._prev = after; this._next = after._next; after._next = this; this._next._prev = this; } internal void InsertBefore(DoubleLink before) { this._prev = before._prev; this._next = before; before._prev = this; this._prev._next = this; } internal void Remove() { this._prev._next = this._next; this._next._prev = this._prev; _next = _prev = this; } #if DBG internal virtual void DebugValidate() { Debug.CheckValid(this._next != this || this._prev == this, "Invalid link"); } internal virtual string DebugDescription(string indent) { string desc; desc = indent + "_next=" + _next + ", _prev=" + _prev + "\nItem="; desc += Debug.GetDescription(Item, indent + " "); return desc; } #endif } } // 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
- SqlSupersetValidator.cs
- HitTestResult.cs
- CapabilitiesRule.cs
- CultureTableRecord.cs
- GetReadStreamResult.cs
- DocumentPage.cs
- TraceListeners.cs
- ComplusTypeValidator.cs
- COAUTHINFO.cs
- UpDownEvent.cs
- DataContractJsonSerializer.cs
- ProcessModuleCollection.cs
- DbConnectionPoolOptions.cs
- DateTimeFormatInfo.cs
- Vector3DAnimationUsingKeyFrames.cs
- Timer.cs
- ProcessHostConfigUtils.cs
- FileDetails.cs
- GridViewColumnHeaderAutomationPeer.cs
- ListViewItem.cs
- MapPathBasedVirtualPathProvider.cs
- DataServiceExpressionVisitor.cs
- Privilege.cs
- FormsAuthenticationUser.cs
- PerformanceCounterPermission.cs
- Pkcs7Signer.cs
- LiteralControl.cs
- InstancePersistence.cs
- DriveInfo.cs
- AssertSection.cs
- HyperlinkAutomationPeer.cs
- GrammarBuilderBase.cs
- RecognizedPhrase.cs
- PngBitmapDecoder.cs
- RoleService.cs
- IPipelineRuntime.cs
- DocumentPageHost.cs
- DataGridCellAutomationPeer.cs
- hresults.cs
- DocumentViewerAutomationPeer.cs
- HashMembershipCondition.cs
- ExtenderProvidedPropertyAttribute.cs
- BinaryMethodMessage.cs
- MenuItemCollection.cs
- PagePropertiesChangingEventArgs.cs
- MaskedTextBox.cs
- PropertyChangeTracker.cs
- SharedUtils.cs
- PermissionSetEnumerator.cs
- AdornerLayer.cs
- EntityDataSourceContainerNameConverter.cs
- HiddenFieldPageStatePersister.cs
- StickyNoteAnnotations.cs
- Rect.cs
- DrawingContextWalker.cs
- Model3DCollection.cs
- PixelFormats.cs
- _FixedSizeReader.cs
- TaskFormBase.cs
- SendMailErrorEventArgs.cs
- ObjectStateFormatter.cs
- ExpressionTextBox.xaml.cs
- DeadCharTextComposition.cs
- ItemType.cs
- BinHexEncoder.cs
- EngineSite.cs
- InfoCardSymmetricCrypto.cs
- AncestorChangedEventArgs.cs
- SafeProcessHandle.cs
- Run.cs
- SQLByte.cs
- ItemDragEvent.cs
- ConfigurationErrorsException.cs
- regiisutil.cs
- Dictionary.cs
- SiteMapNodeCollection.cs
- LongTypeConverter.cs
- TagPrefixAttribute.cs
- XpsS0ValidatingLoader.cs
- SoapAttributeAttribute.cs
- NumberEdit.cs
- HtmlTableCellCollection.cs
- ObjectStateEntryDbDataRecord.cs
- DataContext.cs
- EncoderBestFitFallback.cs
- WebPartConnection.cs
- SqlCommandSet.cs
- XPathDocument.cs
- WebPartCatalogAddVerb.cs
- DataServiceRequestArgs.cs
- TimeSpanSecondsConverter.cs
- RoleService.cs
- ThumbAutomationPeer.cs
- ObjectDataSourceSelectingEventArgs.cs
- IdentityModelStringsVersion1.cs
- AVElementHelper.cs
- SourceItem.cs
- PeerContact.cs
- WMIInterop.cs
- PeerTransportListenAddressConverter.cs