Sha256: dcdcec6792b1ef0863bc26e671154df0ec661e09666087a4ba1e6737ba8af0ec
Contents?: true
Size: 1.2 KB
Versions: 5
Compression:
Stored size: 1.2 KB
Contents
module Gecode module IntEnumMethods include Gecode::Constraints::LeftHandSideMethods private # Produces an expression for the lhs module. def expression(params) params.update(:lhs => self) Constraints::IntEnum::Expression.new(@model, params) end end # A module containing constraints that have enumerations of integer # variables as left hand side. module Constraints::IntEnum # Expressions with int enums as left hand sides. class Expression < Gecode::Constraints::Expression # Raises TypeError unless the left hand side is an int enum. def initialize(model, params) super unless params[:lhs].respond_to? :to_int_var_array raise TypeError, 'Must have int enum as left hand side.' end end end end end require 'gecoder/interface/constraints/int_enum/distinct' require 'gecoder/interface/constraints/int_enum/equality' require 'gecoder/interface/constraints/int_enum/channel' require 'gecoder/interface/constraints/int_enum/element' require 'gecoder/interface/constraints/int_enum/count' require 'gecoder/interface/constraints/int_enum/sort' require 'gecoder/interface/constraints/int_enum/arithmetic'
Version data entries
5 entries across 5 versions & 1 rubygems