Class: Gecode::Constraints::Bool::Expression

Inherits:
Expression
  • Object
show all
Defined in:
lib/gecoder/interface/constraints/bool_var_constraints.rb,
lib/gecoder/interface/constraints/bool/boolean.rb

Overview

Describes a boolean expression.

Instance Method Summary collapse

Methods inherited from Expression

#initialize

Constructor Details

This class inherits a constructor from Gecode::Constraints::Expression

Instance Method Details

#==(expression) ⇒ Object



14
15
16
# File 'lib/gecoder/interface/constraints/bool/boolean.rb', line 14

def ==(expression)
  add_boolean_constraint(expression)
end

#falseObject



30
31
32
33
34
35
36
37
38
39
40
# File 'lib/gecoder/interface/constraints/bool/boolean.rb', line 30

def false
  # Bind parameters.
  lhs = @params[:lhs]
  unless lhs.respond_to? :to_minimodel_lin_exp
    lhs = ExpressionNode.new(lhs, @model)
  end
  
  @params.update(:expression => Gecode::Raw::MiniModel::BoolExpr.new(
      lhs.to_minimodel_lin_exp, Gecode::Raw::MiniModel::BoolExpr::BT_NOT))
  @model.add_constraint BooleanConstraint.new(@model, @params)
end

#trueObject



19
20
21
22
23
24
25
26
27
28
# File 'lib/gecoder/interface/constraints/bool/boolean.rb', line 19

def true
  # Bind parameters.
  lhs = @params[:lhs]
  unless lhs.respond_to? :to_minimodel_lin_exp
    lhs = ExpressionNode.new(lhs, @model)
  end

  @model.add_constraint BooleanConstraint.new(@model, 
    @params.update(:expression => lhs.to_minimodel_lin_exp))
end