73 lines
1.5 KiB
C#
73 lines
1.5 KiB
C#
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;
|
|
}
|
|
}
|