Class: Hakuban::LocalExchange
Class Method Summary
collapse
Instance Method Summary
collapse
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
#initialize(name: false, &block) ⇒ LocalExchange
Returns a new instance of LocalExchange.
8
9
10
11
12
13
14
15
|
# File 'lib/hakuban/exchange.rb', line 8
def initialize(name: false, &block)
Hakuban::hakuban_initialize
Hakuban::logger_initialize("hakuban=warn", skip_if_already_initialized: true)
name = LocalExchange.default_name if name == false
pointer = FFI::hakuban_local_exchange_new(name).unwrap
initialize_pointer(pointer, :hakuban_local_exchange_drop, :hakuban_local_exchange_clone)
self.do_and_drop_or_return(&block)
end
|
Class Method Details
.default_name ⇒ Object
17
18
19
|
# File 'lib/hakuban/exchange.rb', line 17
def self.default_name
"#{Socket.gethostname}:#{File.basename(caller_locations(0..1)[1].path)}:#{$$}"
end
|
Instance Method Details
#object(tags, descriptor = nil) ⇒ Object
#tag(descriptor) ⇒ Object