Esempio n. 1
0
 // Token: 0x060014BB RID: 5307 RVA: 0x0005F67C File Offset: 0x0005D87C
 private void kmethod_3787(Class_459 arg_0)
 {
     this.field_3 = arg_0;
     this.field_0.Add(arg_0);
     this.field_1.prop_0.Add(arg_0);
     this.field_2.Add(arg_0.prop_33, arg_0);
 }
Esempio n. 2
0
        // Token: 0x060014C3 RID: 5315 RVA: 0x0006013C File Offset: 0x0005E33C
        private void vmethod_3795(Class_361 arg_0)
        {
            IList <Class_459> list = new List <Class_459>();

            if (arg_0.prop_3 == Class_428.Array)
            {
                using (IEnumerator <Class_361> enumerator = ((IEnumerable <Class_361>)arg_0).GetEnumerator())
                {
                    while (enumerator.MoveNext())
                    {
                        Class_361 arg_ = enumerator.Current;
                        list.Add(this.gmethod_3793(arg_));
                    }
                    goto IL_61;
                }
            }
            Class_459 class_ = this.gmethod_3793(arg_0);

            if (class_ != null)
            {
                list.Add(class_);
            }
IL_61:
            if (list.Count > 0)
            {
                this.prop_0.prop_31 = list;
            }
        }
Esempio n. 3
0
 // Token: 0x0600135A RID: 4954 RVA: 0x0005B044 File Offset: 0x00059244
 private static void xmethod_3501(Class_431 arg_0, Class_459 arg_1)
 {
     arg_0.prop_0  = (arg_0.prop_0 || (arg_1.prop_2 ?? false));
     arg_0.prop_1 &= (arg_1.prop_7 ?? Class_463.Any);
     arg_0.prop_2  = Class_511.Max(arg_0.prop_2, arg_1.prop_9);
     arg_0.prop_3  = Class_511.Min(arg_0.prop_3, arg_1.prop_10);
     arg_0.prop_4  = Class_511.Max(arg_0.prop_4, arg_1.prop_11);
     arg_0.prop_5  = Class_511.Max(arg_0.prop_5, arg_1.prop_12);
     arg_0.prop_6  = Class_511.Max(arg_0.prop_6, arg_1.prop_13);
     arg_0.prop_7  = (arg_0.prop_7 || (arg_1.prop_14 ?? false));
     arg_0.prop_8  = (arg_0.prop_8 || (arg_1.prop_15 ?? false));
     arg_0.prop_9  = Class_511.Max(arg_0.prop_9, arg_1.prop_16);
     arg_0.prop_10 = Class_511.Min(arg_0.prop_10, arg_1.prop_17);
     arg_0.prop_17 = (arg_0.prop_17 || arg_1.prop_19);
     arg_0.prop_18 = (arg_0.prop_18 && arg_1.prop_26);
     arg_0.prop_19 = (arg_0.prop_19 && arg_1.prop_21);
     arg_0.prop_20 = (arg_0.prop_20 || arg_1.prop_22);
     if (arg_1.prop_28 != null)
     {
         if (arg_0.prop_21 == null)
         {
             arg_0.prop_21 = new List <Class_361>();
         }
         arg_0.prop_21.AddRangeDistinct(arg_1.prop_28, Class_361.prop_0);
     }
     arg_0.prop_22 |= (arg_1.prop_29 ?? Class_463.None);
     if (arg_1.prop_8 != null)
     {
         if (arg_0.prop_11 == null)
         {
             arg_0.prop_11 = new List <string>();
         }
         arg_0.prop_11.AddDistinct(arg_1.prop_8);
     }
 }
Esempio n. 4
0
 // Token: 0x0600135B RID: 4955 RVA: 0x0005B2D4 File Offset: 0x000594D4
 public Class_431 tmethod_3502(Class_459 arg_0)
 {
     this.field_0 = new Class_433();
     this.field_2 = this.gmethod_3503(null, arg_0);
     this.field_1 = new Dictionary <Class_434, Class_431>();
     return(this.pmethod_3509(this.field_2));
 }
Esempio n. 5
0
 // Token: 0x06001385 RID: 4997 RVA: 0x0005C05C File Offset: 0x0005A25C
 private void vmethod_3535(Class_459 arg_0)
 {
     if (arg_0.prop_18 == null && !arg_0.prop_19)
     {
         return;
     }
     this.field_0.gmethod_2013("items");
     if (arg_0.prop_19)
     {
         this.field_0.pmethod_2009();
         if (arg_0.prop_18 != null)
         {
             foreach (Class_459 arg_ in arg_0.prop_18)
             {
                 this.tmethod_3532(arg_);
             }
         }
         this.field_0.smethod_2010();
         return;
     }
     if (arg_0.prop_18 != null && arg_0.prop_18.Count > 0)
     {
         this.tmethod_3532(arg_0.prop_18[0]);
         return;
     }
     this.field_0.kmethod_2007();
     this.field_0.lmethod_2008();
 }
Esempio n. 6
0
 // Token: 0x060014E9 RID: 5353 RVA: 0x00061180 File Offset: 0x0005F380
 public void nmethod_4(Type arg_0, Class_459 arg_1)
 {
     base..ctor();
     Class_517.ArgumentNotNull(arg_0, "type");
     Class_517.ArgumentNotNull(arg_1, "schema");
     this.nprop_0 = arg_0;
     this.nprop_1 = arg_1;
 }
Esempio n. 7
0
        // Token: 0x060014BC RID: 5308 RVA: 0x0005F6B4 File Offset: 0x0005D8B4
        private Class_459 lmethod_3788()
        {
            Class_459 result = this.field_3;

            this.field_0.RemoveAt(this.field_0.Count - 1);
            this.field_3 = this.field_0.LastOrDefault <Class_459>();
            return(result);
        }
Esempio n. 8
0
        // Token: 0x06001317 RID: 4887 RVA: 0x0005ACDC File Offset: 0x00058EDC
        public static bool IsValid(this Class_361 source, Class_459 schema)
        {
            bool valid = true;

            source.Validate(schema, delegate(object sender, Class_438 args)
            {
                valid = false;
            });
            return(valid);
        }
Esempio n. 9
0
        // Token: 0x060014BE RID: 5310 RVA: 0x0005F6FC File Offset: 0x0005D8FC
        internal Class_459 smethod_3790(Class_285 arg_0)
        {
            Class_361 class_ = Class_361.dmethod_2566(arg_0);

            this.field_4 = (class_ as Class_423);
            Class_459 class_2 = this.gmethod_3793(class_);

            this.tmethod_3792(class_2);
            return(class_2);
        }
Esempio n. 10
0
        // Token: 0x0600135C RID: 4956 RVA: 0x0005B314 File Offset: 0x00059514
        public Class_434 gmethod_3503(Class_434 arg_0, Class_459 arg_1)
        {
            string key;

            if (arg_0 != null)
            {
                if (arg_0.prop_1.Contains(arg_1))
                {
                    return(arg_0);
                }
                key = Class_434.dmethod_3526(arg_0.prop_1.Union(new Class_459[]
                {
                    arg_1
                }));
            }
            else
            {
                key = Class_434.dmethod_3526(new Class_459[]
                {
                    arg_1
                });
            }
            if (this.field_0.Contains(key))
            {
                return(this.field_0[key]);
            }
            Class_434 class_ = (arg_0 != null) ? arg_0.vmethod_3525(arg_1) : new Class_434(arg_1);

            this.field_0.Add(class_);
            this.cmethod_3504(arg_1.prop_23, class_.prop_2);
            this.cmethod_3504(arg_1.prop_25, class_.prop_3);
            if (arg_1.prop_18 != null)
            {
                for (int i = 0; i < arg_1.prop_18.Count; i++)
                {
                    this.dmethod_3506(class_, i, arg_1.prop_18[i]);
                }
            }
            if (arg_1.prop_20 != null)
            {
                this.lmethod_3508(class_, arg_1.prop_20);
            }
            if (arg_1.prop_24 != null)
            {
                this.kmethod_3507(class_, arg_1.prop_24);
            }
            if (arg_1.prop_31 != null)
            {
                foreach (Class_459 arg_2 in arg_1.prop_31)
                {
                    class_ = this.gmethod_3503(class_, arg_2);
                }
            }
            return(class_);
        }
Esempio n. 11
0
        // Token: 0x06001318 RID: 4888 RVA: 0x0005AD10 File Offset: 0x00058F10
        public static bool IsValid(this Class_361 source, Class_459 schema, out IList <string> errorMessages)
        {
            IList <string> errors = new List <string>();

            source.Validate(schema, delegate(object sender, Class_438 args)
            {
                errors.Add(args.prop_2);
            });
            errorMessages = errors;
            return(errorMessages.Count == 0);
        }
Esempio n. 12
0
        // Token: 0x060014B6 RID: 5302 RVA: 0x0005F590 File Offset: 0x0005D790
        public static Class_459 gmethod_3783(string str_0, Class_435 arg_0)
        {
            Class_517.ArgumentNotNull(str_0, "json");
            Class_459 result;

            using (Class_285 class_ = new Class_409(new StringReader(str_0)))
            {
                result = Class_459.xmethod_3781(class_, arg_0);
            }
            return(result);
        }
Esempio n. 13
0
 // Token: 0x06001374 RID: 4980 RVA: 0x0005B848 File Offset: 0x00059A48
 public Class_434(Class_459 arg_0)
 {
     this.prop_1 = new ReadOnlyCollection <Class_459>(new Class_459[]
     {
         arg_0
     });
     this.prop_2 = new Dictionary <string, Class_434>();
     this.prop_3 = new Dictionary <string, Class_434>();
     this.prop_4 = new List <Class_434>();
     this.prop_0 = Class_434.dmethod_3526(this.prop_1);
 }
Esempio n. 14
0
        // Token: 0x0600137D RID: 4989 RVA: 0x0005B9E4 File Offset: 0x00059BE4
        public virtual Class_459 xmethod_3531(string str_0)
        {
            Class_435.NClass_0 nclass_ = new Class_435.NClass_0();
            nclass_.field_9 = str_0;
            Class_459 class_ = this.prop_0.SingleOrDefault(new Func <Class_459, bool>(nclass_.nmethod_1));

            if (class_ == null)
            {
                class_ = this.prop_0.SingleOrDefault(new Func <Class_459, bool>(nclass_.nmethod_2));
            }
            return(class_);
        }
Esempio n. 15
0
        // Token: 0x0600135F RID: 4959 RVA: 0x0005B53C File Offset: 0x0005973C
        public void dmethod_3506(Class_434 arg_0, int sayıInt_0, Class_459 arg_1)
        {
            Class_434 arg_2  = (arg_0.prop_4.Count > sayıInt_0) ? arg_0.prop_4[sayıInt_0] : null;
            Class_434 class_ = this.gmethod_3503(arg_2, arg_1);

            if (arg_0.prop_4.Count <= sayıInt_0)
            {
                arg_0.prop_4.Add(class_);
                return;
            }
            arg_0.prop_4[sayıInt_0] = class_;
        }
Esempio n. 16
0
 // Token: 0x06001382 RID: 4994 RVA: 0x0005BA80 File Offset: 0x00059C80
 private void tmethod_3532(Class_459 arg_0)
 {
     if (arg_0.prop_0 != null && this.field_1.xmethod_3531(arg_0.prop_0) != null)
     {
         this.field_0.kmethod_2007();
         this.field_0.gmethod_2013("$ref");
         this.field_0.kmethod_2037(arg_0.prop_0);
         this.field_0.lmethod_2008();
         return;
     }
     this.gmethod_3533(arg_0);
 }
Esempio n. 17
0
 // Token: 0x06001375 RID: 4981 RVA: 0x0005B8A8 File Offset: 0x00059AA8
 private Class_434(Class_434 arg_0, Class_459 arg_1)
 {
     this.prop_1 = new ReadOnlyCollection <Class_459>(arg_0.prop_1.Union(new Class_459[]
     {
         arg_1
     }).ToList <Class_459>());
     this.prop_2 = new Dictionary <string, Class_434>(arg_0.prop_2);
     this.prop_3 = new Dictionary <string, Class_434>(arg_0.prop_3);
     this.prop_4 = new List <Class_434>(arg_0.prop_4);
     this.prop_5 = arg_0.prop_5;
     this.prop_6 = arg_0.prop_6;
     this.prop_0 = Class_434.dmethod_3526(this.prop_1);
 }
Esempio n. 18
0
 // Token: 0x0600131A RID: 4890 RVA: 0x0005AD60 File Offset: 0x00058F60
 public static void Validate(this Class_361 source, Class_459 schema, Class_439 validationEventHandler)
 {
     Class_517.ArgumentNotNull(source, "source");
     Class_517.ArgumentNotNull(schema, "schema");
     using (Class_381 class_ = new Class_381(source.lmethod_2558()))
     {
         class_.prop_8 = schema;
         if (validationEventHandler != null)
         {
             class_.ValidationEventHandler += validationEventHandler;
         }
         while (class_.vmethod_1885())
         {
         }
     }
 }
Esempio n. 19
0
 // Token: 0x060014E0 RID: 5344 RVA: 0x00060E10 File Offset: 0x0005F010
 private void xmethod_3821(Type arg_0, Class_464 arg_1)
 {
     this.prop_2.prop_23 = new Dictionary <string, Class_459>();
     foreach (Class_454 class_ in arg_1.prop_2)
     {
         if (!class_.prop_10)
         {
             bool      flag    = class_.prop_17 == Class_457.Ignore || this.smethod_3820(class_.prop_18.GetValueOrDefault(), Class_377.Ignore) || class_.prop_22 != null || class_.prop_23 != null;
             Class_459 class_2 = this.lmethod_3818(class_.prop_7, class_.prop_15, !flag);
             if (class_.prop_14 != null)
             {
                 class_2.prop_30 = Class_361.smethod_2560(class_.prop_14);
             }
             this.prop_2.prop_23.Add(class_.prop_1, class_2);
         }
     }
     if (arg_0.IsSealed)
     {
         this.prop_2.prop_26 = false;
     }
 }
Esempio n. 20
0
 // Token: 0x060014B5 RID: 5301 RVA: 0x0005F581 File Offset: 0x0005D781
 public static Class_459 tmethod_3782(string str_0)
 {
     return(Class_459.gmethod_3783(str_0, new Class_435()));
 }
Esempio n. 21
0
 // Token: 0x060014C0 RID: 5312 RVA: 0x0005F754 File Offset: 0x0005D954
 private Class_459 tmethod_3792(Class_459 arg_0)
 {
     if (arg_0.prop_35 != null)
     {
         string text = arg_0.prop_35;
         bool   flag = text.StartsWith("#", StringComparison.Ordinal);
         if (flag)
         {
             text = this.xmethod_3791(text);
         }
         Class_459 class_ = this.field_1.xmethod_3531(text);
         if (class_ == null)
         {
             if (flag)
             {
                 string[] array = arg_0.prop_35.TrimStart(new char[]
                 {
                     '#'
                 }).Split(new char[]
                 {
                     '/'
                 }, StringSplitOptions.RemoveEmptyEntries);
                 Class_361 class_2 = this.field_4;
                 foreach (string str_ in array)
                 {
                     string text2 = this.xmethod_3791(str_);
                     if (class_2.prop_3 == Class_428.Object)
                     {
                         class_2 = class_2.cmethod_2464(text2);
                     }
                     else if (class_2.prop_3 == Class_428.Array || class_2.prop_3 == Class_428.Constructor)
                     {
                         int num;
                         if (int.TryParse(text2, out num) && num >= 0 && num < class_2.Count <Class_361>())
                         {
                             class_2 = class_2.cmethod_2464(num);
                         }
                         else
                         {
                             class_2 = null;
                         }
                     }
                     if (class_2 == null)
                     {
                         break;
                     }
                 }
                 if (class_2 != null)
                 {
                     class_ = this.gmethod_3793(class_2);
                 }
             }
             if (class_ == null)
             {
                 throw new Class_318("Could not resolve schema reference '{0}'.".FormatWith(CultureInfo.InvariantCulture, arg_0.prop_35));
             }
         }
         arg_0 = class_;
     }
     if (arg_0.prop_36)
     {
         return(arg_0);
     }
     arg_0.prop_36 = true;
     if (arg_0.prop_31 != null)
     {
         for (int j = 0; j < arg_0.prop_31.Count; j++)
         {
             arg_0.prop_31[j] = this.tmethod_3792(arg_0.prop_31[j]);
         }
     }
     if (arg_0.prop_18 != null)
     {
         for (int k = 0; k < arg_0.prop_18.Count; k++)
         {
             arg_0.prop_18[k] = this.tmethod_3792(arg_0.prop_18[k]);
         }
     }
     if (arg_0.prop_20 != null)
     {
         arg_0.prop_20 = this.tmethod_3792(arg_0.prop_20);
     }
     if (arg_0.prop_25 != null)
     {
         foreach (KeyValuePair <string, Class_459> keyValuePair in arg_0.prop_25.ToList <KeyValuePair <string, Class_459> >())
         {
             arg_0.prop_25[keyValuePair.Key] = this.tmethod_3792(keyValuePair.Value);
         }
     }
     if (arg_0.prop_23 != null)
     {
         foreach (KeyValuePair <string, Class_459> keyValuePair2 in arg_0.prop_23.ToList <KeyValuePair <string, Class_459> >())
         {
             arg_0.prop_23[keyValuePair2.Key] = this.tmethod_3792(keyValuePair2.Value);
         }
     }
     if (arg_0.prop_24 != null)
     {
         arg_0.prop_24 = this.tmethod_3792(arg_0.prop_24);
     }
     return(arg_0);
 }
Esempio n. 22
0
 // Token: 0x06001380 RID: 4992 RVA: 0x0005BA49 File Offset: 0x00059C49
 public bool nmethod_2(Class_459 arg_0)
 {
     return(string.Equals(arg_0.prop_33, this.field_9, StringComparison.Ordinal));
 }
Esempio n. 23
0
 // Token: 0x06001376 RID: 4982 RVA: 0x0005B942 File Offset: 0x00059B42
 public Class_434 vmethod_3525(Class_459 arg_0)
 {
     return(new Class_434(this, arg_0));
 }
Esempio n. 24
0
        // Token: 0x060014C2 RID: 5314 RVA: 0x0005FB80 File Offset: 0x0005DD80
        private void cmethod_3794(Class_423 arg_0)
        {
            using (IEnumerator <KeyValuePair <string, Class_361> > enumerator = arg_0.smethod_3330())
            {
                while (enumerator.MoveNext())
                {
                    KeyValuePair <string, Class_361> keyValuePair = enumerator.Current;
                    string key;
                    switch (key = keyValuePair.Key)
                    {
                    case "type":
                        this.prop_0.prop_7 = this.xmethod_3801(keyValuePair.Value);
                        break;

                    case "id":
                        this.prop_0.prop_0 = Class_361.lmethod_2508(keyValuePair.Value);
                        break;

                    case "title":
                        this.prop_0.prop_1 = Class_361.lmethod_2508(keyValuePair.Value);
                        break;

                    case "description":
                        this.prop_0.prop_6 = Class_361.lmethod_2508(keyValuePair.Value);
                        break;

                    case "properties":
                        this.prop_0.prop_23 = this.pmethod_3799(keyValuePair.Value);
                        break;

                    case "items":
                        this.smethod_3800(keyValuePair.Value);
                        break;

                    case "additionalProperties":
                        this.kmethod_3797(keyValuePair.Value);
                        break;

                    case "additionalItems":
                        this.lmethod_3798(keyValuePair.Value);
                        break;

                    case "patternProperties":
                        this.prop_0.prop_25 = this.pmethod_3799(keyValuePair.Value);
                        break;

                    case "required":
                        this.prop_0.prop_2 = new bool?(Class_361.smethod_2480(keyValuePair.Value));
                        break;

                    case "requires":
                        this.prop_0.prop_27 = Class_361.lmethod_2508(keyValuePair.Value);
                        break;

                    case "minimum":
                        this.prop_0.prop_12 = new double?(Class_361.dmethod_2506(keyValuePair.Value));
                        break;

                    case "maximum":
                        this.prop_0.prop_13 = new double?(Class_361.dmethod_2506(keyValuePair.Value));
                        break;

                    case "exclusiveMinimum":
                        this.prop_0.prop_14 = new bool?(Class_361.smethod_2480(keyValuePair.Value));
                        break;

                    case "exclusiveMaximum":
                        this.prop_0.prop_15 = new bool?(Class_361.smethod_2480(keyValuePair.Value));
                        break;

                    case "maxLength":
                        this.prop_0.prop_10 = new int?(Class_361.pmethod_2489(keyValuePair.Value));
                        break;

                    case "minLength":
                        this.prop_0.prop_9 = new int?(Class_361.pmethod_2489(keyValuePair.Value));
                        break;

                    case "maxItems":
                        this.prop_0.prop_17 = new int?(Class_361.pmethod_2489(keyValuePair.Value));
                        break;

                    case "minItems":
                        this.prop_0.prop_16 = new int?(Class_361.pmethod_2489(keyValuePair.Value));
                        break;

                    case "divisibleBy":
                        this.prop_0.prop_11 = new double?(Class_361.dmethod_2506(keyValuePair.Value));
                        break;

                    case "disallow":
                        this.prop_0.prop_29 = this.xmethod_3801(keyValuePair.Value);
                        break;

                    case "default":
                        this.prop_0.prop_30 = keyValuePair.Value.smethod_2580();
                        break;

                    case "hidden":
                        this.prop_0.prop_4 = new bool?(Class_361.smethod_2480(keyValuePair.Value));
                        break;

                    case "readonly":
                        this.prop_0.prop_3 = new bool?(Class_361.smethod_2480(keyValuePair.Value));
                        break;

                    case "format":
                        this.prop_0.prop_32 = Class_361.lmethod_2508(keyValuePair.Value);
                        break;

                    case "pattern":
                        this.prop_0.prop_8 = Class_361.lmethod_2508(keyValuePair.Value);
                        break;

                    case "enum":
                        this.dmethod_3796(keyValuePair.Value);
                        break;

                    case "extends":
                        this.vmethod_3795(keyValuePair.Value);
                        break;

                    case "uniqueItems":
                        this.prop_0.prop_22 = Class_361.smethod_2480(keyValuePair.Value);
                        break;
                    }
                }
            }
        }
Esempio n. 25
0
        // Token: 0x060014DD RID: 5341 RVA: 0x000608BC File Offset: 0x0005EABC
        private Class_459 lmethod_3818(Type arg_0, Class_364 arg_1, bool bool_0)
        {
            Class_462.NClass_1 nclass_ = new Class_462.NClass_1();
            nclass_.field_7 = arg_0;
            Class_517.ArgumentNotNull(nclass_.field_7, "type");
            string text  = this.kmethod_3817(nclass_.field_7, false);
            string text2 = this.kmethod_3817(nclass_.field_7, true);

            if (!string.IsNullOrEmpty(text))
            {
                Class_459 class_ = this.field_1.xmethod_3531(text);
                if (class_ != null)
                {
                    if (arg_1 != Class_364.Always && !Class_462.gmethod_3823(class_.prop_7, Class_463.Null))
                    {
                        class_.prop_7 |= Class_463.Null;
                    }
                    if (bool_0 && class_.prop_2 != true)
                    {
                        class_.prop_2 = new bool?(true);
                    }
                    return(class_);
                }
            }
            if (this.field_2.Any(new Func <Class_462.NClass_0, bool>(nclass_.nmethod_6)))
            {
                throw new Class_318("Unresolved circular reference for type '{0}'. Explicitly define an Id for the type using a JsonObject/JsonArray attribute or automatically generate a type Id using the UndefinedSchemaIdHandling property.".FormatWith(CultureInfo.InvariantCulture, nclass_.field_7));
            }
            Class_349 class_2 = this.prop_1.tmethod_3542(nclass_.field_7);
            Class_299 class_3;

            if ((class_3 = class_2.prop_3) != null || (class_3 = class_2.prop_4) != null)
            {
                Class_459 class_4 = class_3.vmethod_2135();
                if (class_4 != null)
                {
                    return(class_4);
                }
            }
            this.pmethod_3809(new Class_462.NClass_0(nclass_.field_7, new Class_459()));
            if (text2 != null)
            {
                this.prop_2.prop_0 = text2;
            }
            if (bool_0)
            {
                this.prop_2.prop_2 = new bool?(true);
            }
            this.prop_2.prop_1 = this.vmethod_3815(nclass_.field_7);
            this.prop_2.prop_6 = this.dmethod_3816(nclass_.field_7);
            if (class_3 != null)
            {
                this.prop_2.prop_7 = new Class_463?(Class_463.Any);
            }
            else
            {
                switch (class_2.field_5)
                {
                case Class_448.Object:
                    this.prop_2.prop_7 = new Class_463?(this.pmethod_3819(Class_463.Object, arg_1));
                    this.prop_2.prop_0 = this.kmethod_3817(nclass_.field_7, false);
                    this.xmethod_3821(nclass_.field_7, (Class_464)class_2);
                    goto IL_519;

                case Class_448.Array:
                    {
                        this.prop_2.prop_7 = new Class_463?(this.pmethod_3819(Class_463.Array, arg_1));
                        this.prop_2.prop_0 = this.kmethod_3817(nclass_.field_7, false);
                        Class_376 cachedAttribute    = Class_470.GetCachedAttribute <Class_376>(nclass_.field_7);
                        bool      flag               = cachedAttribute == null || cachedAttribute.AllowNullItems;
                        Type      collectionItemType = Class_514.GetCollectionItemType(nclass_.field_7);
                        if (collectionItemType != null)
                        {
                            this.prop_2.prop_18 = new List <Class_459>();
                            this.prop_2.prop_18.Add(this.lmethod_3818(collectionItemType, (!flag) ? Class_364.Always : Class_364.Default, false));
                            goto IL_519;
                        }
                        goto IL_519;
                    }

                case Class_448.Primitive:
                {
                    this.prop_2.prop_7 = new Class_463?(this.cmethod_3824(nclass_.field_7, arg_1));
                    if (!(this.prop_2.prop_7 == Class_463.Integer) || !nclass_.field_7.IsEnum || nclass_.field_7.IsDefined(typeof(FlagsAttribute), true))
                    {
                        goto IL_519;
                    }
                    this.prop_2.prop_28 = new List <Class_361>();
                    IList <Class_506 <long> > namesAndValues = Class_505.GetNamesAndValues <long>(nclass_.field_7);
                    using (IEnumerator <Class_506 <long> > enumerator = namesAndValues.GetEnumerator())
                    {
                        while (enumerator.MoveNext())
                        {
                            Class_506 <long> class_5 = enumerator.Current;
                            Class_361        item    = Class_361.smethod_2560(class_5.Value);
                            this.prop_2.prop_28.Add(item);
                        }
                        goto IL_519;
                    }
                    break;
                }

                case Class_448.String:
                    break;

                case Class_448.Dictionary:
                {
                    this.prop_2.prop_7 = new Class_463?(this.pmethod_3819(Class_463.Object, arg_1));
                    Type type;
                    Type arg_2;
                    Class_514.GetDictionaryKeyValueTypes(nclass_.field_7, out type, out arg_2);
                    if (!(type != null))
                    {
                        goto IL_519;
                    }
                    Class_349 class_6 = this.prop_1.tmethod_3542(type);
                    if (class_6.field_5 == Class_448.Primitive)
                    {
                        this.prop_2.prop_24 = this.lmethod_3818(arg_2, Class_364.Default, false);
                        goto IL_519;
                    }
                    goto IL_519;
                }

                case Class_448.Dynamic:
                case Class_448.Linq:
                    this.prop_2.prop_7 = new Class_463?(Class_463.Any);
                    goto IL_519;

                case Class_448.Serializable:
                    this.prop_2.prop_7 = new Class_463?(this.pmethod_3819(Class_463.Object, arg_1));
                    this.prop_2.prop_0 = this.kmethod_3817(nclass_.field_7, false);
                    this.tmethod_3822(nclass_.field_7, (Class_367)class_2);
                    goto IL_519;

                default:
                    throw new Class_318("Unexpected contract type: {0}".FormatWith(CultureInfo.InvariantCulture, class_2));
                }
                Class_463 value = (!Class_514.IsNullable(class_2.prop_0)) ? Class_463.String : this.pmethod_3819(Class_463.String, arg_1);
                this.prop_2.prop_7 = new Class_463?(value);
            }
            IL_519:
            return(this.smethod_3810().nprop_1);
        }
Esempio n. 26
0
 // Token: 0x06001319 RID: 4889 RVA: 0x0005AD53 File Offset: 0x00058F53
 public static void Validate(this Class_361 source, Class_459 schema)
 {
     source.Validate(schema, null);
 }
Esempio n. 27
0
        // Token: 0x0600135E RID: 4958 RVA: 0x0005B514 File Offset: 0x00059714
        public void vmethod_3505(IDictionary <string, Class_434> arg_0, string str_0, Class_459 arg_1)
        {
            Class_434 arg_2;

            arg_0.TryGetValue(str_0, out arg_2);
            arg_0[str_0] = this.gmethod_3503(arg_2, arg_1);
        }
Esempio n. 28
0
 private static string kmethod_3527(Class_459 arg_0)
 {
     return(arg_0.prop_34);
 }
Esempio n. 29
0
 // Token: 0x06001361 RID: 4961 RVA: 0x0005B5B6 File Offset: 0x000597B6
 public void lmethod_3508(Class_434 arg_0, Class_459 arg_1)
 {
     arg_0.prop_6 = this.gmethod_3503(arg_0.prop_6, arg_1);
 }
Esempio n. 30
0
 // Token: 0x06001360 RID: 4960 RVA: 0x0005B5A1 File Offset: 0x000597A1
 public void kmethod_3507(Class_434 arg_0, Class_459 arg_1)
 {
     arg_0.prop_5 = this.gmethod_3503(arg_0.prop_5, arg_1);
 }