Exemplo n.º 1
0
        public TMonad Evaluate(IContext <TMonad> context)
        {
            var c = ConditionExpr.Evaluate(context);

            return(Monad.Bind(c, BindC));

            TMonad BindC(object res)
            {
                return(res is bool b
                    ? (b ? TrueExpr.Evaluate(context) : FalseExpr.Evaluate(context))
                    : Monad.Unit);
            }
        }
Exemplo n.º 2
0
 internal abstract T_Return VisitFalse(FalseExpr <T_Identifier> expression);
 internal override CellTreeNode VisitFalse(FalseExpr <DomainConstraint <BoolLiteral, Constant> > expression)
 {
     throw new NotImplementedException();
 }
 internal override BoolExpr <DomainConstraint <BoolLiteral, Constant> > VisitFalse(
     FalseExpr <DomainConstraint <BoolLiteral, Constant> > expression)
 {
     return((BoolExpr <DomainConstraint <BoolLiteral, Constant> >)TrueExpr <DomainConstraint <BoolLiteral, Constant> > .Value);
 }
 internal override int VisitFalse(FalseExpr <T_Identifier> expression)
 {
     return(0);
 }
 internal override StringBuilder VisitFalse(
     FalseExpr <DomainConstraint <BoolLiteral, Constant> > expression)
 {
     this.m_builder.Append("False");
     return(this.m_builder);
 }
 internal override IEnumerable <TermExpr <DomainConstraint <BoolLiteral, Constant> > > VisitFalse(
     FalseExpr <DomainConstraint <BoolLiteral, Constant> > expression)
 {
     yield break;
 }
 internal override DbExpression VisitFalse(
     FalseExpr <DomainConstraint <BoolLiteral, Constant> > expression)
 {
     return((DbExpression)DbExpressionBuilder.False);
 }
 internal override bool VisitFalse(
     FalseExpr <DomainConstraint <BoolLiteral, Constant> > expression)
 {
     return(true);
 }
Exemplo n.º 10
0
 internal override DomainBoolExpr VisitFalse(FalseExpr <DomainConstraint> expression)
 {
     return(TrueExpr <DomainConstraint> .Value);
 }