using System; namespace System.Text.RegularExpressions.Syntax { // Token: 0x020002DA RID: 730 internal abstract class CompositeExpression : Expression { // Token: 0x06001AA2 RID: 6818 RVA: 0x000623E8 File Offset: 0x000605E8 public CompositeExpression() { this.expressions = new ExpressionCollection(); } // Token: 0x17000825 RID: 2085 // (get) Token: 0x06001AA3 RID: 6819 RVA: 0x000623FC File Offset: 0x000605FC protected ExpressionCollection Expressions { get { return this.expressions; } } // Token: 0x06001AA4 RID: 6820 RVA: 0x00062404 File Offset: 0x00060604 protected void GetWidth(out int min, out int max, int count) { min = int.MaxValue; max = 0; bool flag = true; for (int i = 0; i < count; i++) { Expression expression = this.Expressions[i]; if (expression != null) { flag = false; int num; int num2; expression.GetWidth(out num, out num2); if (num < min) { min = num; } if (num2 > max) { max = num2; } } } if (flag) { min = (max = 0); } } // Token: 0x06001AA5 RID: 6821 RVA: 0x0006247C File Offset: 0x0006067C public override bool IsComplex() { foreach (object obj in this.Expressions) { Expression expression = (Expression)obj; if (expression.IsComplex()) { return true; } } return base.GetFixedWidth() <= 0; } // Token: 0x040015B0 RID: 5552 private ExpressionCollection expressions; } }