Class: Hakuban::ObjectStateStream
Instance Method Summary
collapse
Methods included from Stream
#each
Methods inherited from FFIObject
#do_and_drop, #do_and_drop_or_return, #drop, #drop_lock, #drop_release, #dropped?, generate_finalizer, #initialize_copy, #inspect, #with_pointer, with_pointers
Constructor Details
Returns a new instance of ObjectStateStream.
11
12
13
|
# File 'lib/hakuban/object_state_stream.rb', line 11
def initialize(pointer)
initialize_pointer(pointer, :hakuban_object_state_stream_drop, nil)
end
|
Instance Method Details
#current(&block) ⇒ Object
26
27
28
29
30
|
# File 'lib/hakuban/object_state_stream.rb', line 26
def current(&block)
return nil if ! pointer = with_pointer { |pointer| FFI::hakuban_object_state_stream_current(pointer) }.unwrap
ObjectState.send(:from_ffi_pointer, pointer).do_and_drop_or_return(&block)
rescue FFIObject::PointerAlreadyDropped
end
|
#descriptor ⇒ Object
33
34
35
|
# File 'lib/hakuban/object_state_stream.rb', line 33
def descriptor
Hakuban::ObjectDescriptor.send(:from_ffi_pointer, with_pointer { |pointer| FFI::hakuban_object_state_stream_descriptor(pointer) })
end
|