using System; using System.Runtime.InteropServices; namespace System.Collections.Generic { /// Represents a node in a . This class cannot be inherited. /// Specifies the element type of the linked list. /// 1 // Token: 0x0200000D RID: 13 [ComVisible(false)] public sealed class LinkedListNode { /// Initializes a new instance of the class, containing the specified value. /// The value to contain in the . // Token: 0x06000038 RID: 56 RVA: 0x00002B28 File Offset: 0x00000D28 public LinkedListNode(T value) { this.item = value; } // Token: 0x06000039 RID: 57 RVA: 0x00002B38 File Offset: 0x00000D38 internal LinkedListNode(LinkedList list, T value) { this.container = list; this.item = value; this.forward = this; this.back = this; } // Token: 0x0600003A RID: 58 RVA: 0x00002B6C File Offset: 0x00000D6C internal LinkedListNode(LinkedList list, T value, LinkedListNode previousNode, LinkedListNode nextNode) { this.container = list; this.item = value; this.back = previousNode; this.forward = nextNode; previousNode.forward = this; nextNode.back = this; } // Token: 0x0600003B RID: 59 RVA: 0x00002BAC File Offset: 0x00000DAC internal void Detach() { this.back.forward = this.forward; this.forward.back = this.back; this.forward = (this.back = null); this.container = null; } // Token: 0x0600003C RID: 60 RVA: 0x00002BF4 File Offset: 0x00000DF4 internal void SelfReference(LinkedList list) { this.forward = this; this.back = this; this.container = list; } // Token: 0x0600003D RID: 61 RVA: 0x00002C0C File Offset: 0x00000E0C internal void InsertBetween(LinkedListNode previousNode, LinkedListNode nextNode, LinkedList list) { previousNode.forward = this; nextNode.back = this; this.forward = nextNode; this.back = previousNode; this.container = list; } /// Gets the that the belongs to. /// A reference to the that the belongs to, or null if the is not linked. // Token: 0x1700000C RID: 12 // (get) Token: 0x0600003E RID: 62 RVA: 0x00002C34 File Offset: 0x00000E34 public LinkedList List { get { return this.container; } } /// Gets the next node in the . /// A reference to the next node in the , or null if the current node is the last element () of the . // Token: 0x1700000D RID: 13 // (get) Token: 0x0600003F RID: 63 RVA: 0x00002C3C File Offset: 0x00000E3C public LinkedListNode Next { get { return (this.container == null || this.forward == this.container.first) ? null : this.forward; } } /// Gets the previous node in the . /// A reference to the previous node in the , or null if the current node is the first element () of the . // Token: 0x1700000E RID: 14 // (get) Token: 0x06000040 RID: 64 RVA: 0x00002C6C File Offset: 0x00000E6C public LinkedListNode Previous { get { return (this.container == null || this == this.container.first) ? null : this.back; } } /// Gets the value contained in the node. /// The value contained in the node. // Token: 0x1700000F RID: 15 // (get) Token: 0x06000041 RID: 65 RVA: 0x00002CA4 File Offset: 0x00000EA4 // (set) Token: 0x06000042 RID: 66 RVA: 0x00002CAC File Offset: 0x00000EAC public T Value { get { return this.item; } set { this.item = value; } } // Token: 0x0400002F RID: 47 private T item; // Token: 0x04000030 RID: 48 private LinkedList container; // Token: 0x04000031 RID: 49 internal LinkedListNode forward; // Token: 0x04000032 RID: 50 internal LinkedListNode back; } }