// Token: 0x06000C79 RID: 3193 RVA: 0x000449D0 File Offset: 0x00042BD0 public virtual IEnumerable <Class_361> pmethod_2249(IEnumerable <Class_361> arg_0, bool bool_0) { foreach (Class_361 class_ in arg_0) { if (this.prop_0 != null) { Class_361 class_2 = Class_329.dmethod_2246(class_, bool_0, this.prop_0.Value); if (class_2 != null) { yield return(class_2); } } else if (class_ is Class_424 || class_ is Class_421) { foreach (Class_361 class_3 in ((IEnumerable <Class_361>)class_)) { yield return(class_3); } } else if (bool_0) { throw new Class_318("Index * not valid on {0}.".FormatWith(CultureInfo.InvariantCulture, class_.GetType().Name)); } } yield break; }
// Token: 0x06000C87 RID: 3207 RVA: 0x00044D44 File Offset: 0x00042F44 public virtual IEnumerable <Class_361> tmethod_2252(IEnumerable <Class_361> arg_0, bool bool_0) { foreach (Class_361 arg_ in arg_0) { foreach (int sayıInt_ in this.prop_0) { Class_361 class_ = Class_329.dmethod_2246(arg_, bool_0, sayıInt_); if (class_ != null) { yield return(class_); } } } yield break; }
// Token: 0x06000CC6 RID: 3270 RVA: 0x00045DDC File Offset: 0x00043FDC private bool xmethod_2271(List <Class_329> arg_0, int sayıInt_0, bool bool_0) { bool flag = false; bool flag2 = false; bool flag3 = false; bool flag4 = false; while (this.field_1 < this.field_0.Length && !flag4) { char c = this.field_0[this.field_1]; char c2 = c; if (c2 <= ')') { if (c2 != ' ') { switch (c2) { case '(': break; case ')': goto IL_FB; default: goto IL_1F1; } } else { if (this.field_1 < this.field_0.Length) { flag4 = true; continue; } continue; } } else { if (c2 == '.') { if (this.field_1 > sayıInt_0) { string text = this.field_0.Substring(sayıInt_0, this.field_1 - sayıInt_0); if (text == "*") { text = null; } Class_329 item = flag ? new Class_341 { prop_0 = text } : new Class_333 { prop_0 = text }; arg_0.Add(item); flag = false; } if (this.field_1 + 1 < this.field_0.Length && this.field_0[this.field_1 + 1] == '.') { flag = true; this.field_1++; } this.field_1++; sayıInt_0 = this.field_1; flag2 = false; flag3 = true; continue; } switch (c2) { case '[': break; case '\\': goto IL_1F1; case ']': goto IL_FB; default: goto IL_1F1; } } if (this.field_1 > sayıInt_0) { string str_ = this.field_0.Substring(sayıInt_0, this.field_1 - sayıInt_0); Class_329 item2 = flag ? new Class_341 { prop_0 = str_ } : new Class_333 { prop_0 = str_ }; arg_0.Add(item2); flag = false; } arg_0.Add(this.tmethod_2272(c)); this.field_1++; sayıInt_0 = this.field_1; flag2 = true; flag3 = false; continue; IL_FB: flag4 = true; continue; IL_1F1: if (bool_0 && (c == '=' || c == '<' || c == '!' || c == '>' || c == '|' || c == '&')) { flag4 = true; } else { if (flag2) { throw new Class_318("Unexpected character following indexer: " + c); } this.field_1++; } } bool flag5 = this.field_1 == this.field_0.Length; if (this.field_1 > sayıInt_0) { string text2 = this.field_0.Substring(sayıInt_0, this.field_1 - sayıInt_0).TrimEnd(new char[0]); if (text2 == "*") { text2 = null; } Class_329 item3 = flag ? new Class_341 { prop_0 = text2 } : new Class_333 { prop_0 = text2 }; arg_0.Add(item3); } else if (flag3 && (flag5 || bool_0)) { throw new Class_318("Unexpected end while parsing path."); } return(flag5); }