czmq-ffi-gen 0.14.1 → 0.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGES.md +4 -0
- data/lib/czmq-ffi-gen/czmq/ffi.rb +5 -18
- data/lib/czmq-ffi-gen/czmq/ffi/version.rb +1 -1
- data/lib/czmq-ffi-gen/czmq/ffi/zactor.rb +2 -2
- data/lib/czmq-ffi-gen/czmq/ffi/zconfig.rb +12 -2
- data/lib/czmq-ffi-gen/czmq/ffi/zproc.rb +34 -212
- data/lib/czmq-ffi-gen/czmq/ffi/zsys.rb +20 -0
- data/lib/czmq-ffi-gen/gem_version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 385ee7e824a0e1dff718d374dd1edb70859e55ab
|
4
|
+
data.tar.gz: f9d3e26d677f11dbf6cb0b0f59094570d52f508f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 30d3bfdcab57c11a91739058f9244acb38538ab698d9cb9e81feef8fc9e1a9918ad6c23bcf1c6eb55b106befbeac8b6dffc1363f665cd4d46320a89d2de472e4
|
7
|
+
data.tar.gz: 7c7802743eaf98e517f09b1b88ed22e9a6b86bbe532bf69679bda5ff2fc72ab4afa06951fe1153b4f8a947e6b90b35288436b679b4854c156d2d2851cda5669c
|
data/CHANGES.md
CHANGED
@@ -204,6 +204,7 @@ module CZMQ
|
|
204
204
|
attach_function :zconfig_str_load, [:string], :pointer, **opts
|
205
205
|
attach_function :zconfig_str_save, [:pointer], :pointer, **opts
|
206
206
|
attach_function :zconfig_has_changed, [:pointer], :bool, **opts
|
207
|
+
attach_function :zconfig_remove_subtree, [:pointer], :void, **opts
|
207
208
|
attach_function :zconfig_remove, [:pointer], :void, **opts
|
208
209
|
attach_function :zconfig_fprint, [:pointer, :pointer], :void, **opts
|
209
210
|
attach_function :zconfig_print, [:pointer], :void, **opts
|
@@ -515,7 +516,9 @@ module CZMQ
|
|
515
516
|
|
516
517
|
attach_function :zproc_new, [], :pointer, **opts
|
517
518
|
attach_function :zproc_destroy, [:pointer], :void, **opts
|
519
|
+
attach_function :zproc_args, [:pointer], :pointer, **opts
|
518
520
|
attach_function :zproc_set_args, [:pointer, :pointer], :void, **opts
|
521
|
+
attach_function :zproc_set_argsx, [:pointer, :string, :varargs], :void, **opts
|
519
522
|
attach_function :zproc_set_env, [:pointer, :pointer], :void, **opts
|
520
523
|
attach_function :zproc_set_stdin, [:pointer, :pointer], :void, **opts
|
521
524
|
attach_function :zproc_set_stdout, [:pointer, :pointer], :void, **opts
|
@@ -531,24 +534,6 @@ module CZMQ
|
|
531
534
|
attach_function :zproc_actor, [:pointer], :pointer, **opts
|
532
535
|
attach_function :zproc_kill, [:pointer, :int], :void, **opts
|
533
536
|
attach_function :zproc_set_verbose, [:pointer, :bool], :void, **opts
|
534
|
-
attach_function :zproc_czmq_version, [], :int, **opts
|
535
|
-
attach_function :zproc_interrupted, [], :bool, **opts
|
536
|
-
attach_function :zproc_has_curve, [], :bool, **opts
|
537
|
-
attach_function :zproc_hostname, [], :pointer, **opts
|
538
|
-
attach_function :zproc_daemonize, [:string], :void, **opts
|
539
|
-
attach_function :zproc_run_as, [:string, :string, :string], :void, **opts
|
540
|
-
attach_function :zproc_set_io_threads, [:size_t], :void, **opts
|
541
|
-
attach_function :zproc_set_max_sockets, [:size_t], :void, **opts
|
542
|
-
attach_function :zproc_set_biface, [:string], :void, **opts
|
543
|
-
attach_function :zproc_biface, [], :string, **opts
|
544
|
-
attach_function :zproc_set_log_ident, [:string], :void, **opts
|
545
|
-
attach_function :zproc_set_log_sender, [:string], :void, **opts
|
546
|
-
attach_function :zproc_set_log_system, [:bool], :void, **opts
|
547
|
-
attach_function :zproc_log_error, [:string, :varargs], :void, **opts
|
548
|
-
attach_function :zproc_log_warning, [:string, :varargs], :void, **opts
|
549
|
-
attach_function :zproc_log_notice, [:string, :varargs], :void, **opts
|
550
|
-
attach_function :zproc_log_info, [:string, :varargs], :void, **opts
|
551
|
-
attach_function :zproc_log_debug, [:string, :varargs], :void, **opts
|
552
537
|
attach_function :zproc_test, [:bool], :void, **opts
|
553
538
|
|
554
539
|
require_relative 'ffi/zproc'
|
@@ -763,6 +748,8 @@ module CZMQ
|
|
763
748
|
attach_function :zsys_handler_set, [:pointer], :void, **opts
|
764
749
|
attach_function :zsys_handler_reset, [], :void, **opts
|
765
750
|
attach_function :zsys_catch_interrupts, [], :void, **opts
|
751
|
+
attach_function :zsys_is_interrupted, [], :bool, **opts
|
752
|
+
attach_function :zsys_set_interrupted, [], :void, **opts
|
766
753
|
attach_function :zsys_file_exists, [:string], :bool, **opts
|
767
754
|
attach_function :zsys_file_modified, [:string], :pointer, **opts
|
768
755
|
attach_function :zsys_file_mode, [:string], :int, **opts
|
@@ -95,8 +95,8 @@ module CZMQ
|
|
95
95
|
#
|
96
96
|
# An example - to send $KTHXBAI string
|
97
97
|
#
|
98
|
-
# if (zstr_send (self
|
99
|
-
# zsock_wait (self
|
98
|
+
# if (zstr_send (self, "$KTHXBAI") == 0)
|
99
|
+
# zsock_wait (self);
|
100
100
|
# typedef void (zactor_destructor_fn) (
|
101
101
|
# zactor_t *self);
|
102
102
|
#
|
@@ -402,12 +402,22 @@ module CZMQ
|
|
402
402
|
result
|
403
403
|
end
|
404
404
|
|
405
|
-
# Destroy subtree (
|
405
|
+
# Destroy subtree (all children)
|
406
406
|
#
|
407
407
|
# @return [void]
|
408
|
-
def
|
408
|
+
def remove_subtree()
|
409
409
|
raise DestroyedError unless @ptr
|
410
410
|
self_p = @ptr
|
411
|
+
result = ::CZMQ::FFI.zconfig_remove_subtree(self_p)
|
412
|
+
result
|
413
|
+
end
|
414
|
+
|
415
|
+
# Destroy node and subtree (all children)
|
416
|
+
#
|
417
|
+
# @param self_p [#__ptr_give_ref]
|
418
|
+
# @return [void]
|
419
|
+
def self.remove(self_p)
|
420
|
+
self_p = self_p.__ptr_give_ref
|
411
421
|
result = ::CZMQ::FFI.zconfig_remove(self_p)
|
412
422
|
result
|
413
423
|
end
|
@@ -92,28 +92,53 @@ module CZMQ
|
|
92
92
|
result
|
93
93
|
end
|
94
94
|
|
95
|
+
# Return command line arguments (the first item is the executable) or
|
96
|
+
# NULL if not set.
|
97
|
+
#
|
98
|
+
# @return [Zlist]
|
99
|
+
def args()
|
100
|
+
raise DestroyedError unless @ptr
|
101
|
+
self_p = @ptr
|
102
|
+
result = ::CZMQ::FFI.zproc_args(self_p)
|
103
|
+
result = Zlist.__new result, true
|
104
|
+
result
|
105
|
+
end
|
106
|
+
|
95
107
|
# Setup the command line arguments, the first item must be an (absolute) filename
|
96
108
|
# to run.
|
97
109
|
#
|
98
|
-
# @param
|
110
|
+
# @param arguments [#__ptr_give_ref]
|
99
111
|
# @return [void]
|
100
|
-
def set_args(
|
112
|
+
def set_args(arguments)
|
101
113
|
raise DestroyedError unless @ptr
|
102
114
|
self_p = @ptr
|
103
|
-
|
104
|
-
result = ::CZMQ::FFI.zproc_set_args(self_p,
|
115
|
+
arguments = arguments.__ptr_give_ref
|
116
|
+
result = ::CZMQ::FFI.zproc_set_args(self_p, arguments)
|
117
|
+
result
|
118
|
+
end
|
119
|
+
|
120
|
+
# Setup the command line arguments, the first item must be an (absolute) filename
|
121
|
+
# to run. Variadic function, must be NULL terminated.
|
122
|
+
#
|
123
|
+
# @param arguments [String, #to_s, nil]
|
124
|
+
# @param args [Array<Object>] see https://github.com/ffi/ffi/wiki/examples#using-varargs
|
125
|
+
# @return [void]
|
126
|
+
def set_argsx(arguments, *args)
|
127
|
+
raise DestroyedError unless @ptr
|
128
|
+
self_p = @ptr
|
129
|
+
result = ::CZMQ::FFI.zproc_set_argsx(self_p, arguments, *args)
|
105
130
|
result
|
106
131
|
end
|
107
132
|
|
108
133
|
# Setup the environment variables for the process.
|
109
134
|
#
|
110
|
-
# @param
|
135
|
+
# @param arguments [#__ptr_give_ref]
|
111
136
|
# @return [void]
|
112
|
-
def set_env(
|
137
|
+
def set_env(arguments)
|
113
138
|
raise DestroyedError unless @ptr
|
114
139
|
self_p = @ptr
|
115
|
-
|
116
|
-
result = ::CZMQ::FFI.zproc_set_env(self_p,
|
140
|
+
arguments = arguments.__ptr_give_ref
|
141
|
+
result = ::CZMQ::FFI.zproc_set_env(self_p, arguments)
|
117
142
|
result
|
118
143
|
end
|
119
144
|
|
@@ -189,7 +214,7 @@ module CZMQ
|
|
189
214
|
result
|
190
215
|
end
|
191
216
|
|
192
|
-
# Starts the process.
|
217
|
+
# Starts the process, return just before execve/CreateProcess.
|
193
218
|
#
|
194
219
|
# @return [Integer]
|
195
220
|
def run()
|
@@ -275,209 +300,6 @@ module CZMQ
|
|
275
300
|
result
|
276
301
|
end
|
277
302
|
|
278
|
-
# Returns CZMQ version as a single 6-digit integer encoding the major
|
279
|
-
# version (x 10000), the minor version (x 100) and the patch.
|
280
|
-
#
|
281
|
-
# @return [Integer]
|
282
|
-
def self.czmq_version()
|
283
|
-
result = ::CZMQ::FFI.zproc_czmq_version()
|
284
|
-
result
|
285
|
-
end
|
286
|
-
|
287
|
-
# Returns true if the process received a SIGINT or SIGTERM signal.
|
288
|
-
# It is good practice to use this method to exit any infinite loop
|
289
|
-
# processing messages.
|
290
|
-
#
|
291
|
-
# @return [Boolean]
|
292
|
-
def self.interrupted()
|
293
|
-
result = ::CZMQ::FFI.zproc_interrupted()
|
294
|
-
result
|
295
|
-
end
|
296
|
-
|
297
|
-
# Returns true if the underlying libzmq supports CURVE security.
|
298
|
-
#
|
299
|
-
# @return [Boolean]
|
300
|
-
def self.has_curve()
|
301
|
-
result = ::CZMQ::FFI.zproc_has_curve()
|
302
|
-
result
|
303
|
-
end
|
304
|
-
|
305
|
-
# Return current host name, for use in public tcp:// endpoints.
|
306
|
-
# If the host name is not resolvable, returns NULL.
|
307
|
-
#
|
308
|
-
# @return [::FFI::AutoPointer]
|
309
|
-
def self.hostname()
|
310
|
-
result = ::CZMQ::FFI.zproc_hostname()
|
311
|
-
result = ::FFI::AutoPointer.new(result, LibC.method(:free))
|
312
|
-
result
|
313
|
-
end
|
314
|
-
|
315
|
-
# Move the current process into the background. The precise effect
|
316
|
-
# depends on the operating system. On POSIX boxes, moves to a specified
|
317
|
-
# working directory (if specified), closes all file handles, reopens
|
318
|
-
# stdin, stdout, and stderr to the null device, and sets the process to
|
319
|
-
# ignore SIGHUP. On Windows, does nothing. Returns 0 if OK, -1 if there
|
320
|
-
# was an error.
|
321
|
-
#
|
322
|
-
# @param workdir [String, #to_s, nil]
|
323
|
-
# @return [void]
|
324
|
-
def self.daemonize(workdir)
|
325
|
-
result = ::CZMQ::FFI.zproc_daemonize(workdir)
|
326
|
-
result
|
327
|
-
end
|
328
|
-
|
329
|
-
# Drop the process ID into the lockfile, with exclusive lock, and
|
330
|
-
# switch the process to the specified group and/or user. Any of the
|
331
|
-
# arguments may be null, indicating a no-op. Returns 0 on success,
|
332
|
-
# -1 on failure. Note if you combine this with zsys_daemonize, run
|
333
|
-
# after, not before that method, or the lockfile will hold the wrong
|
334
|
-
# process ID.
|
335
|
-
#
|
336
|
-
# @param lockfile [String, #to_s, nil]
|
337
|
-
# @param group [String, #to_s, nil]
|
338
|
-
# @param user [String, #to_s, nil]
|
339
|
-
# @return [void]
|
340
|
-
def self.run_as(lockfile, group, user)
|
341
|
-
result = ::CZMQ::FFI.zproc_run_as(lockfile, group, user)
|
342
|
-
result
|
343
|
-
end
|
344
|
-
|
345
|
-
# Configure the number of I/O threads that ZeroMQ will use. A good
|
346
|
-
# rule of thumb is one thread per gigabit of traffic in or out. The
|
347
|
-
# default is 1, sufficient for most applications. If the environment
|
348
|
-
# variable ZSYS_IO_THREADS is defined, that provides the default.
|
349
|
-
# Note that this method is valid only before any socket is created.
|
350
|
-
#
|
351
|
-
# @param io_threads [Integer, #to_int, #to_i]
|
352
|
-
# @return [void]
|
353
|
-
def self.set_io_threads(io_threads)
|
354
|
-
io_threads = Integer(io_threads)
|
355
|
-
result = ::CZMQ::FFI.zproc_set_io_threads(io_threads)
|
356
|
-
result
|
357
|
-
end
|
358
|
-
|
359
|
-
# Configure the number of sockets that ZeroMQ will allow. The default
|
360
|
-
# is 1024. The actual limit depends on the system, and you can query it
|
361
|
-
# by using zsys_socket_limit (). A value of zero means "maximum".
|
362
|
-
# Note that this method is valid only before any socket is created.
|
363
|
-
#
|
364
|
-
# @param max_sockets [Integer, #to_int, #to_i]
|
365
|
-
# @return [void]
|
366
|
-
def self.set_max_sockets(max_sockets)
|
367
|
-
max_sockets = Integer(max_sockets)
|
368
|
-
result = ::CZMQ::FFI.zproc_set_max_sockets(max_sockets)
|
369
|
-
result
|
370
|
-
end
|
371
|
-
|
372
|
-
# Set network interface name to use for broadcasts, particularly zbeacon.
|
373
|
-
# This lets the interface be configured for test environments where required.
|
374
|
-
# For example, on Mac OS X, zbeacon cannot bind to 255.255.255.255 which is
|
375
|
-
# the default when there is no specified interface. If the environment
|
376
|
-
# variable ZSYS_INTERFACE is set, use that as the default interface name.
|
377
|
-
# Setting the interface to "*" means "use all available interfaces".
|
378
|
-
#
|
379
|
-
# @param value [String, #to_s, nil]
|
380
|
-
# @return [void]
|
381
|
-
def self.set_biface(value)
|
382
|
-
result = ::CZMQ::FFI.zproc_set_biface(value)
|
383
|
-
result
|
384
|
-
end
|
385
|
-
|
386
|
-
# Return network interface to use for broadcasts, or "" if none was set.
|
387
|
-
#
|
388
|
-
# @return [String]
|
389
|
-
def self.biface()
|
390
|
-
result = ::CZMQ::FFI.zproc_biface()
|
391
|
-
result
|
392
|
-
end
|
393
|
-
|
394
|
-
# Set log identity, which is a string that prefixes all log messages sent
|
395
|
-
# by this process. The log identity defaults to the environment variable
|
396
|
-
# ZSYS_LOGIDENT, if that is set.
|
397
|
-
#
|
398
|
-
# @param value [String, #to_s, nil]
|
399
|
-
# @return [void]
|
400
|
-
def self.set_log_ident(value)
|
401
|
-
result = ::CZMQ::FFI.zproc_set_log_ident(value)
|
402
|
-
result
|
403
|
-
end
|
404
|
-
|
405
|
-
# Sends log output to a PUB socket bound to the specified endpoint. To
|
406
|
-
# collect such log output, create a SUB socket, subscribe to the traffic
|
407
|
-
# you care about, and connect to the endpoint. Log traffic is sent as a
|
408
|
-
# single string frame, in the same format as when sent to stdout. The
|
409
|
-
# log system supports a single sender; multiple calls to this method will
|
410
|
-
# bind the same sender to multiple endpoints. To disable the sender, call
|
411
|
-
# this method with a null argument.
|
412
|
-
#
|
413
|
-
# @param endpoint [String, #to_s, nil]
|
414
|
-
# @return [void]
|
415
|
-
def self.set_log_sender(endpoint)
|
416
|
-
result = ::CZMQ::FFI.zproc_set_log_sender(endpoint)
|
417
|
-
result
|
418
|
-
end
|
419
|
-
|
420
|
-
# Enable or disable logging to the system facility (syslog on POSIX boxes,
|
421
|
-
# event log on Windows). By default this is disabled.
|
422
|
-
#
|
423
|
-
# @param logsystem [Boolean]
|
424
|
-
# @return [void]
|
425
|
-
def self.set_log_system(logsystem)
|
426
|
-
logsystem = !(0==logsystem||!logsystem) # boolean
|
427
|
-
result = ::CZMQ::FFI.zproc_set_log_system(logsystem)
|
428
|
-
result
|
429
|
-
end
|
430
|
-
|
431
|
-
# Log error condition - highest priority
|
432
|
-
#
|
433
|
-
# @param format [String, #to_s, nil]
|
434
|
-
# @param args [Array<Object>] see https://github.com/ffi/ffi/wiki/examples#using-varargs
|
435
|
-
# @return [void]
|
436
|
-
def self.log_error(format, *args)
|
437
|
-
result = ::CZMQ::FFI.zproc_log_error(format, *args)
|
438
|
-
result
|
439
|
-
end
|
440
|
-
|
441
|
-
# Log warning condition - high priority
|
442
|
-
#
|
443
|
-
# @param format [String, #to_s, nil]
|
444
|
-
# @param args [Array<Object>] see https://github.com/ffi/ffi/wiki/examples#using-varargs
|
445
|
-
# @return [void]
|
446
|
-
def self.log_warning(format, *args)
|
447
|
-
result = ::CZMQ::FFI.zproc_log_warning(format, *args)
|
448
|
-
result
|
449
|
-
end
|
450
|
-
|
451
|
-
# Log normal, but significant, condition - normal priority
|
452
|
-
#
|
453
|
-
# @param format [String, #to_s, nil]
|
454
|
-
# @param args [Array<Object>] see https://github.com/ffi/ffi/wiki/examples#using-varargs
|
455
|
-
# @return [void]
|
456
|
-
def self.log_notice(format, *args)
|
457
|
-
result = ::CZMQ::FFI.zproc_log_notice(format, *args)
|
458
|
-
result
|
459
|
-
end
|
460
|
-
|
461
|
-
# Log informational message - low priority
|
462
|
-
#
|
463
|
-
# @param format [String, #to_s, nil]
|
464
|
-
# @param args [Array<Object>] see https://github.com/ffi/ffi/wiki/examples#using-varargs
|
465
|
-
# @return [void]
|
466
|
-
def self.log_info(format, *args)
|
467
|
-
result = ::CZMQ::FFI.zproc_log_info(format, *args)
|
468
|
-
result
|
469
|
-
end
|
470
|
-
|
471
|
-
# Log debug-level message - lowest priority
|
472
|
-
#
|
473
|
-
# @param format [String, #to_s, nil]
|
474
|
-
# @param args [Array<Object>] see https://github.com/ffi/ffi/wiki/examples#using-varargs
|
475
|
-
# @return [void]
|
476
|
-
def self.log_debug(format, *args)
|
477
|
-
result = ::CZMQ::FFI.zproc_log_debug(format, *args)
|
478
|
-
result
|
479
|
-
end
|
480
|
-
|
481
303
|
# Self test of this class.
|
482
304
|
#
|
483
305
|
# @param verbose [Boolean]
|
@@ -197,6 +197,26 @@ module CZMQ
|
|
197
197
|
result
|
198
198
|
end
|
199
199
|
|
200
|
+
# Check if default interrupt handler of Ctrl-C or SIGTERM was called.
|
201
|
+
# Does not work if ZSYS_SIGHANDLER is false and code does not call
|
202
|
+
# set interrupted on signal.
|
203
|
+
#
|
204
|
+
# @return [Boolean]
|
205
|
+
def self.is_interrupted()
|
206
|
+
result = ::CZMQ::FFI.zsys_is_interrupted()
|
207
|
+
result
|
208
|
+
end
|
209
|
+
|
210
|
+
# Set interrupted flag. This is done by default signal handler, however
|
211
|
+
# this can be handy for language bindings or cases without default
|
212
|
+
# signal handler.
|
213
|
+
#
|
214
|
+
# @return [void]
|
215
|
+
def self.set_interrupted()
|
216
|
+
result = ::CZMQ::FFI.zsys_set_interrupted()
|
217
|
+
result
|
218
|
+
end
|
219
|
+
|
200
220
|
# Return 1 if file exists, else zero
|
201
221
|
#
|
202
222
|
# @param filename [String, #to_s, nil]
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: czmq-ffi-gen
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.15.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Patrik Wenger
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2018-03-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: ffi
|