Sha256: ff6775d13b9cf38a71a616686f1077390a4163cc9330d48f71a9e6812f68dbd4

Contents?: true

Size: 573 Bytes

Versions: 2

Compression:

Stored size: 573 Bytes

Contents

module TensorStream
  module CheckOps
    def CheckOps.included(klass)
      klass.class_eval do
        register_op :assert_equal do |context, tensor, inputs|
          result = call_vector_op(tensor, :equal, inputs[0], inputs[1], context) { |t, u| t == u }

          result = result.is_a?(Array) ? result.flatten.uniq : [result]
          prefix = tensor.options[:message] || ""
          raise TensorStream::InvalidArgumentError, "#{prefix} #{tensor.inputs[0].name} != #{tensor.inputs[1].name}" if result != [true]

          nil
        end
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
tensor_stream-1.0.0 lib/tensor_stream/evaluator/ruby/check_ops.rb
tensor_stream-1.0.0.pre.rc1 lib/tensor_stream/evaluator/ruby/check_ops.rb