public ForClassElseEndIf <T, ForClassElseEndIf <T, ENDIF> > If(Expression <Func <T, bool> > conditionalExpression) { var invoker = _rulesEngine.RegisterCondition(conditionalExpression); return(new ForClassElseEndIf <T, ForClassElseEndIf <T, ENDIF> >(invoker.IfTrueEngine, invoker, this)); }