class Tensorflow::Status

Public Class Methods

check() { |status| ... } click to toggle source
# File lib/tensorflow/status.rb, line 11
def self.check
  status = Status.new
  result = yield status
  status.check
  status = nil
  result
end
finalize(pointer) click to toggle source
# File lib/tensorflow/status.rb, line 5
def self.finalize(pointer)
  proc do
    FFI::TF_DeleteStatus(pointer)
  end
end
new() click to toggle source
# File lib/tensorflow/status.rb, line 19
def initialize
  @pointer = FFI.TF_NewStatus
  ObjectSpace.define_finalizer(self, self.class.finalize(@pointer))
end

Public Instance Methods

check() click to toggle source
# File lib/tensorflow/status.rb, line 40
def check
  if self.code != :tf_ok
    camel_case = self.code[3..-1].capitalize
    camel_case.gsub!(/(?:_|(\/))([a-z\d]*)/i) {"#{$1}#{$2.capitalize}"}
    error_klass = Tensorflow::Error.const_get("#{camel_case}Error")
    raise(error_klass, self.message)
  end
end
code() click to toggle source
# File lib/tensorflow/status.rb, line 28
def code
  FFI.TF_GetCode(self)
end
message() click to toggle source
# File lib/tensorflow/status.rb, line 32
def message
  FFI.TF_Message(self)
end
set(code, message) click to toggle source
# File lib/tensorflow/status.rb, line 36
def set(code, message)
  FFI.TF_SetStatus(self, code, message)
end
to_ptr() click to toggle source
# File lib/tensorflow/status.rb, line 24
def to_ptr
  @pointer
end