Sha256: bcb387cf6bf0eb1eea7888dbbb2e478897632e82506fd5881b823702ff0a1a97

Contents?: true

Size: 544 Bytes

Versions: 15

Compression:

Stored size: 544 Bytes

Contents

module Gecode::Constraints::SetEnum
  class Expression
    # Posts a channel constraint on the variables in the enum with the specified
    # int enum.
    def channel(enum)
      unless enum.respond_to? :to_int_var_array
        raise TypeError, "Expected integer variable enum, for #{enum.class}."
      end
      
      # Just provide commutativity to the corresponding int enum constraint.
      if @params[:negate]
        enum.must_not.channel(@params[:lhs])
      else
        enum.must.channel(@params[:lhs])
      end
    end
  end
end

Version data entries

15 entries across 15 versions & 2 rubygems

Version Path
gecoder-with-gecode-0.8.2-mswin32 lib/gecoder/interface/constraints/set_enum/channel.rb
gecoder-with-gecode-0.8.1-mswin32 lib/gecoder/interface/constraints/set_enum/channel.rb
gecoder-with-gecode-0.8.0-mswin32 lib/gecoder/interface/constraints/set_enum/channel.rb
gecoder-with-gecode-0.7.1-mswin32 lib/gecoder/interface/constraints/set_enum/channel.rb
gecoder-0.6.0 lib/gecoder/interface/constraints/set_enum/channel.rb
gecoder-0.7.0 lib/gecoder/interface/constraints/set_enum/channel.rb
gecoder-0.7.1 lib/gecoder/interface/constraints/set_enum/channel.rb
gecoder-0.8.0 lib/gecoder/interface/constraints/set_enum/channel.rb
gecoder-0.8.1 lib/gecoder/interface/constraints/set_enum/channel.rb
gecoder-0.8.2 lib/gecoder/interface/constraints/set_enum/channel.rb
gecoder-0.6.1 lib/gecoder/interface/constraints/set_enum/channel.rb
gecoder-with-gecode-0.7.1 lib/gecoder/interface/constraints/set_enum/channel.rb
gecoder-with-gecode-0.8.0 lib/gecoder/interface/constraints/set_enum/channel.rb
gecoder-with-gecode-0.8.1 lib/gecoder/interface/constraints/set_enum/channel.rb
gecoder-with-gecode-0.8.2 lib/gecoder/interface/constraints/set_enum/channel.rb