// Token: 0x06000B2D RID: 2861 RVA: 0x00040753 File Offset: 0x0003E953 public Class_290(object obje_0, Class_295 arg_0) { this.field_0 = obje_0; this.field_1 = arg_0; }
// Token: 0x06000BC3 RID: 3011 RVA: 0x00042199 File Offset: 0x00040399 private void gmethod_2103(object obje_0, Class_295 arg_0) { this.cmethod_2104(new Class_290(obje_0, arg_0)); }
// Token: 0x06000B0D RID: 2829 RVA: 0x0003FF24 File Offset: 0x0003E124 private void vmethod_1935(Class_295 arg_0) { switch (arg_0) { case Class_295.Number: { double num = this.gmethod_1943(); if (this.field_11 == Class_315.Decimal) { base.tmethod_1902(Class_508.Float, Convert.ToDecimal(num, CultureInfo.InvariantCulture)); return; } base.tmethod_1902(Class_508.Float, num); return; } case Class_295.String: case Class_295.Symbol: base.tmethod_1902(Class_508.String, this.lmethod_1938()); return; case Class_295.Object: { base.xmethod_1901(Class_508.StartObject); Class_286.NClass_1 nclass_ = new Class_286.NClass_1(Class_295.Object); this.gmethod_1933(nclass_); nclass_.field_27 = this.cmethod_1944(); return; } case Class_295.Array: { base.xmethod_1901(Class_508.StartArray); Class_286.NClass_1 nclass_2 = new Class_286.NClass_1(Class_295.Array); this.gmethod_1933(nclass_2); nclass_2.field_27 = this.cmethod_1944(); return; } case Class_295.Binary: { Class_283 class_; byte[] array = this.dmethod_1936(out class_); object obje_ = (class_ != Class_283.Uuid) ? array : new Guid(array); base.tmethod_1902(Class_508.Bytes, obje_); return; } case Class_295.Undefined: base.xmethod_1901(Class_508.Undefined); return; case Class_295.Oid: { byte[] obje_2 = this.lmethod_1948(12); base.tmethod_1902(Class_508.Bytes, obje_2); return; } case Class_295.Boolean: { bool flag = Convert.ToBoolean(this.cmethod_1934()); base.tmethod_1902(Class_508.Boolean, flag); return; } case Class_295.Date: { long javaScriptTicks = this.vmethod_1945(); DateTime dateTime = Class_502.ConvertJavaScriptTicksToDateTime(javaScriptTicks); DateTime dateTime2; switch (this.prop_2) { case DateTimeKind.Unspecified: dateTime2 = DateTime.SpecifyKind(dateTime, DateTimeKind.Unspecified); goto IL_1A7; case DateTimeKind.Local: dateTime2 = dateTime.ToLocalTime(); goto IL_1A7; } dateTime2 = dateTime; IL_1A7: base.tmethod_1902(Class_508.Date, dateTime2); return; } case Class_295.Null: base.xmethod_1901(Class_508.Null); return; case Class_295.Regex: { string str = this.kmethod_1937(); string str2 = this.kmethod_1937(); string obje_3 = "/" + str + "/" + str2; base.tmethod_1902(Class_508.String, obje_3); return; } case Class_295.Reference: base.xmethod_1901(Class_508.StartObject); this.field_10 = Class_286.NClass_0.field_18; return; case Class_295.Code: base.tmethod_1902(Class_508.String, this.lmethod_1938()); return; case Class_295.CodeWScope: base.xmethod_1901(Class_508.StartObject); this.field_10 = Class_286.NClass_0.field_21; return; case Class_295.Integer: base.tmethod_1902(Class_508.Integer, (long)this.cmethod_1944()); return; case Class_295.TimeStamp: case Class_295.Long: base.tmethod_1902(Class_508.Integer, this.vmethod_1945()); return; default: throw new ArgumentOutOfRangeException("type", "Unexpected BsonType value: " + arg_0); } }
// Token: 0x06000B1C RID: 2844 RVA: 0x00040672 File Offset: 0x0003E872 public void nmethod_0(Class_295 arg_0) { base..ctor(); this.field_26 = arg_0; }
// Token: 0x06000B09 RID: 2825 RVA: 0x0003FD20 File Offset: 0x0003DF20 private bool xmethod_1931() { switch (base.prop_0) { case Class_285.NClass_0.field_5: { Class_508 arg_ = (!this.field_12) ? Class_508.StartObject : Class_508.StartArray; Class_295 arg_2 = (!this.field_12) ? Class_295.Object : Class_295.Array; base.xmethod_1901(arg_); Class_286.NClass_1 nclass_ = new Class_286.NClass_1(arg_2); this.gmethod_1933(nclass_); nclass_.field_27 = this.cmethod_1944(); return(true); } case Class_285.NClass_0.field_6: case Class_285.NClass_0.field_12: return(false); case Class_285.NClass_0.field_7: this.vmethod_1935(this.field_9); return(true); case Class_285.NClass_0.field_8: case Class_285.NClass_0.field_10: case Class_285.NClass_0.field_13: { Class_286.NClass_1 nclass_2 = this.field_11; if (nclass_2 == null) { return(false); } int num = nclass_2.field_27 - 1; if (nclass_2.field_28 < num) { if (nclass_2.field_26 == Class_295.Array) { this.pmethod_1919(); this.vmethod_1935(this.field_9); return(true); } base.tmethod_1902(Class_508.PropertyName, this.pmethod_1919()); return(true); } else { if (nclass_2.field_28 != num) { throw Class_414.lmethod_3098(this, "Read past end of current container context."); } if (this.cmethod_1934() != 0) { throw Class_414.lmethod_3098(this, "Unexpected end of object byte value."); } this.tmethod_1932(); if (this.field_11 != null) { this.kmethod_1947(nclass_2.field_27); } Class_508 arg_3 = (nclass_2.field_26 == Class_295.Object) ? Class_508.EndObject : Class_508.EndArray; base.xmethod_1901(arg_3); return(true); } break; } case Class_285.NClass_0.field_14: case Class_285.NClass_0.field_15: case Class_285.NClass_0.field_16: case Class_285.NClass_0.field_17: return(false); } throw new ArgumentOutOfRangeException(); }