IronRuby.Compiler.Ast.CaseExpression.TransformWhenCondition C# (CSharp) Метод

TransformWhenCondition() статический приватный Метод

static private TransformWhenCondition ( AstGenerator gen, Expression comparisons, System.Linq.Expressions value ) : Expression
gen AstGenerator
comparisons Expression
value System.Linq.Expressions
Результат System.Linq.Expressions.Expression
        internal static MSA.Expression/*!*/ TransformWhenCondition(AstGenerator/*!*/ gen, Expression/*!*/[]/*!*/ comparisons, MSA.Expression value) {
            MSA.Expression result;
            if (comparisons.Length > 0) {
                result = MakeTest(gen, comparisons[comparisons.Length - 1], value);
                for (int i = comparisons.Length - 2; i >= 0; i--) {
                    result = Ast.OrElse(MakeTest(gen, comparisons[i], value), result);
                }
            } else {
                result = Ast.Constant(false);
            }

            return result;
        }