using System; using System.CodeDom.Compiler; using System.Collections; using System.Collections.Generic; using System.ComponentModel; namespace SimpleJson { // Token: 0x020002E2 RID: 738 [GeneratedCode("simple-json", "1.0.0")] [EditorBrowsable(EditorBrowsableState.Never)] internal class JsonObject : IDictionary, ICollection>, IEnumerable>, IEnumerable { // Token: 0x0600307B RID: 12411 RVA: 0x00046BE4 File Offset: 0x00044DE4 public JsonObject() { this._members = new Dictionary(); } // Token: 0x0600307C RID: 12412 RVA: 0x00046BF8 File Offset: 0x00044DF8 public JsonObject(IEqualityComparer comparer) { this._members = new Dictionary(comparer); } // Token: 0x17000AFF RID: 2815 public object this[int index] { get { return JsonObject.GetAtIndex(this._members, index); } } // Token: 0x0600307E RID: 12414 RVA: 0x00046C34 File Offset: 0x00044E34 internal static object GetAtIndex(IDictionary obj, int index) { if (obj == null) { throw new ArgumentNullException("obj"); } if (index >= obj.Count) { throw new ArgumentOutOfRangeException("index"); } int num = 0; foreach (KeyValuePair keyValuePair in obj) { if (num++ == index) { return keyValuePair.Value; } } return null; } // Token: 0x0600307F RID: 12415 RVA: 0x00046CD0 File Offset: 0x00044ED0 public void Add(string key, object value) { this._members.Add(key, value); } // Token: 0x06003080 RID: 12416 RVA: 0x00046CE0 File Offset: 0x00044EE0 public bool ContainsKey(string key) { return this._members.ContainsKey(key); } // Token: 0x17000B00 RID: 2816 // (get) Token: 0x06003081 RID: 12417 RVA: 0x00046D04 File Offset: 0x00044F04 public ICollection Keys { get { return this._members.Keys; } } // Token: 0x06003082 RID: 12418 RVA: 0x00046D24 File Offset: 0x00044F24 public bool Remove(string key) { return this._members.Remove(key); } // Token: 0x06003083 RID: 12419 RVA: 0x00046D48 File Offset: 0x00044F48 public bool TryGetValue(string key, out object value) { return this._members.TryGetValue(key, out value); } // Token: 0x17000B01 RID: 2817 // (get) Token: 0x06003084 RID: 12420 RVA: 0x00046D6C File Offset: 0x00044F6C public ICollection Values { get { return this._members.Values; } } // Token: 0x17000B02 RID: 2818 public object this[string key] { get { return this._members[key]; } set { this._members[key] = value; } } // Token: 0x06003087 RID: 12423 RVA: 0x00046DC0 File Offset: 0x00044FC0 public void Add(KeyValuePair item) { this._members.Add(item.Key, item.Value); } // Token: 0x06003088 RID: 12424 RVA: 0x00046DDC File Offset: 0x00044FDC public void Clear() { this._members.Clear(); } // Token: 0x06003089 RID: 12425 RVA: 0x00046DEC File Offset: 0x00044FEC public bool Contains(KeyValuePair item) { return this._members.ContainsKey(item.Key) && this._members[item.Key] == item.Value; } // Token: 0x0600308A RID: 12426 RVA: 0x00046E38 File Offset: 0x00045038 public void CopyTo(KeyValuePair[] array, int arrayIndex) { if (array == null) { throw new ArgumentNullException("array"); } int num = this.Count; foreach (KeyValuePair keyValuePair in this) { array[arrayIndex++] = keyValuePair; if (--num <= 0) { break; } } } // Token: 0x17000B03 RID: 2819 // (get) Token: 0x0600308B RID: 12427 RVA: 0x00046EC4 File Offset: 0x000450C4 public int Count { get { return this._members.Count; } } // Token: 0x17000B04 RID: 2820 // (get) Token: 0x0600308C RID: 12428 RVA: 0x00046EE4 File Offset: 0x000450E4 public bool IsReadOnly { get { return false; } } // Token: 0x0600308D RID: 12429 RVA: 0x00046EFC File Offset: 0x000450FC public bool Remove(KeyValuePair item) { return this._members.Remove(item.Key); } // Token: 0x0600308E RID: 12430 RVA: 0x00046F24 File Offset: 0x00045124 public IEnumerator> GetEnumerator() { return this._members.GetEnumerator(); } // Token: 0x0600308F RID: 12431 RVA: 0x00046F4C File Offset: 0x0004514C IEnumerator IEnumerable.GetEnumerator() { return this._members.GetEnumerator(); } // Token: 0x06003090 RID: 12432 RVA: 0x00046F74 File Offset: 0x00045174 public override string ToString() { return SimpleJson.SerializeObject(this); } // Token: 0x04000990 RID: 2448 private readonly Dictionary _members; } }