Class: CZMQ::FFI::Zuuid
- Inherits:
-
Object
- Object
- CZMQ::FFI::Zuuid
- Defined in:
- lib/czmq-ffi-gen/czmq/ffi/zuuid.rb
Overview
This class is 100% generated using zproject.
UUID support class
Defined Under Namespace
Classes: DestroyedError
Class Method Summary collapse
- .__new ⇒ Object
- .create_finalizer_for(ptr) ⇒ Proc
-
.new ⇒ CZMQ::Zuuid
Create a new UUID object.
-
.new_from(source) ⇒ CZMQ::Zuuid
Create UUID object from supplied ZUUID_LEN-octet value.
-
.test(verbose) ⇒ void
Self test of this class.
Instance Method Summary collapse
-
#__ptr ⇒ ::FFI::Pointer
(also: #to_ptr)
Return internal pointer.
-
#__ptr_give_ref ⇒ ::FFI::MemoryPointer
Nullify internal pointer and return pointer pointer.
-
#__undef_finalizer ⇒ void
Undefines the finalizer for this object.
-
#data ⇒ ::FFI::Pointer
Return UUID binary data.
-
#destroy ⇒ void
Destroy a specified UUID object.
-
#dup ⇒ Zuuid
Make copy of UUID object; if uuid is null, or memory was exhausted, returns null.
-
#eq(compare) ⇒ Boolean
Check if UUID is same as supplied value.
-
#export(target) ⇒ void
Store UUID blob in target array.
-
#initialize(ptr, finalize = true) ⇒ Zuuid
constructor
Attaches the pointer ptr to this instance and defines a finalizer for it if necessary.
-
#neq(compare) ⇒ Boolean
Check if UUID is different from supplied value.
- #null? ⇒ Boolean
-
#set(source) ⇒ void
Set UUID to new supplied ZUUID_LEN-octet value.
-
#set_str(source) ⇒ Integer
Set UUID to new supplied string value skipping ‘-’ and ‘‘’ optional delimiters.
-
#size ⇒ Integer
Return UUID binary size.
-
#str ⇒ String
Returns UUID as string.
-
#str_canonical ⇒ String
Return UUID in the canonical string format: 8-4-4-4-12, in lower case.
Constructor Details
#initialize(ptr, finalize = true) ⇒ Zuuid
Attaches the pointer ptr to this instance and defines a finalizer for it if necessary.
24 25 26 27 28 29 30 31 32 |
# File 'lib/czmq-ffi-gen/czmq/ffi/zuuid.rb', line 24 def initialize(ptr, finalize = true) @ptr = ptr if @ptr.null? @ptr = nil # Remove null pointers so we don't have to test for them. elsif finalize @finalizer = self.class.create_finalizer_for @ptr ObjectSpace.define_finalizer self, @finalizer end end |
Class Method Details
.__new ⇒ Object
18 |
# File 'lib/czmq-ffi-gen/czmq/ffi/zuuid.rb', line 18 alias :__new :new |
.create_finalizer_for(ptr) ⇒ Proc
35 36 37 38 39 40 41 |
# File 'lib/czmq-ffi-gen/czmq/ffi/zuuid.rb', line 35 def self.create_finalizer_for(ptr) Proc.new do ptr_ptr = ::FFI::MemoryPointer.new :pointer ptr_ptr.write_pointer ptr ::CZMQ::FFI.zuuid_destroy ptr_ptr end end |
.new ⇒ CZMQ::Zuuid
Create a new UUID object.
78 79 80 81 |
# File 'lib/czmq-ffi-gen/czmq/ffi/zuuid.rb', line 78 def self.new() ptr = ::CZMQ::FFI.zuuid_new() __new ptr end |
Instance Method Details
#__ptr ⇒ ::FFI::Pointer Also known as: to_ptr
Return internal pointer
48 49 50 51 |
# File 'lib/czmq-ffi-gen/czmq/ffi/zuuid.rb', line 48 def __ptr raise DestroyedError unless @ptr @ptr end |
#__ptr_give_ref ⇒ ::FFI::MemoryPointer
This detaches the current instance from the native object and thus makes it unusable.
Nullify internal pointer and return pointer pointer.
59 60 61 62 63 64 65 66 |
# File 'lib/czmq-ffi-gen/czmq/ffi/zuuid.rb', line 59 def __ptr_give_ref raise DestroyedError unless @ptr ptr_ptr = ::FFI::MemoryPointer.new :pointer ptr_ptr.write_pointer @ptr __undef_finalizer if @finalizer @ptr = nil ptr_ptr end |
#__undef_finalizer ⇒ void
Only use this if you need to and can guarantee that the native object will be freed by other means.
This method returns an undefined value.
Undefines the finalizer for this object.
71 72 73 74 |
# File 'lib/czmq-ffi-gen/czmq/ffi/zuuid.rb', line 71 def __undef_finalizer ObjectSpace.undefine_finalizer self @finalizer = nil end |
#data ⇒ ::FFI::Pointer
Return UUID binary data.
127 128 129 130 131 132 |
# File 'lib/czmq-ffi-gen/czmq/ffi/zuuid.rb', line 127 def data() raise DestroyedError unless @ptr self_p = @ptr result = ::CZMQ::FFI.zuuid_data(self_p) result end |
#destroy ⇒ void
This method returns an undefined value.
Destroy a specified UUID object.
94 95 96 97 98 99 |
# File 'lib/czmq-ffi-gen/czmq/ffi/zuuid.rb', line 94 def destroy() return unless @ptr self_p = __ptr_give_ref result = ::CZMQ::FFI.zuuid_destroy(self_p) result end |
#dup ⇒ Zuuid
Make copy of UUID object; if uuid is null, or memory was exhausted, returns null.
203 204 205 206 207 208 209 |
# File 'lib/czmq-ffi-gen/czmq/ffi/zuuid.rb', line 203 def dup() raise DestroyedError unless @ptr self_p = @ptr result = ::CZMQ::FFI.zuuid_dup(self_p) result = Zuuid.__new result, false result end |
#eq(compare) ⇒ Boolean
Check if UUID is same as supplied value
181 182 183 184 185 186 |
# File 'lib/czmq-ffi-gen/czmq/ffi/zuuid.rb', line 181 def eq(compare) raise DestroyedError unless @ptr self_p = @ptr result = ::CZMQ::FFI.zuuid_eq(self_p, compare) result end |
#export(target) ⇒ void
This method returns an undefined value.
Store UUID blob in target array
170 171 172 173 174 175 |
# File 'lib/czmq-ffi-gen/czmq/ffi/zuuid.rb', line 170 def export(target) raise DestroyedError unless @ptr self_p = @ptr result = ::CZMQ::FFI.zuuid_export(self_p, target) result end |
#neq(compare) ⇒ Boolean
Check if UUID is different from supplied value
192 193 194 195 196 197 |
# File 'lib/czmq-ffi-gen/czmq/ffi/zuuid.rb', line 192 def neq(compare) raise DestroyedError unless @ptr self_p = @ptr result = ::CZMQ::FFI.zuuid_neq(self_p, compare) result end |
#null? ⇒ Boolean
43 44 45 |
# File 'lib/czmq-ffi-gen/czmq/ffi/zuuid.rb', line 43 def null? !@ptr or @ptr.null? end |
#set(source) ⇒ void
This method returns an undefined value.
Set UUID to new supplied ZUUID_LEN-octet value.
105 106 107 108 109 110 |
# File 'lib/czmq-ffi-gen/czmq/ffi/zuuid.rb', line 105 def set(source) raise DestroyedError unless @ptr self_p = @ptr result = ::CZMQ::FFI.zuuid_set(self_p, source) result end |
#set_str(source) ⇒ Integer
Set UUID to new supplied string value skipping ‘-’ and ‘‘’ optional delimiters. Return 0 if OK, else returns -1.
117 118 119 120 121 122 |
# File 'lib/czmq-ffi-gen/czmq/ffi/zuuid.rb', line 117 def set_str(source) raise DestroyedError unless @ptr self_p = @ptr result = ::CZMQ::FFI.zuuid_set_str(self_p, source) result end |
#size ⇒ Integer
Return UUID binary size
137 138 139 140 141 142 |
# File 'lib/czmq-ffi-gen/czmq/ffi/zuuid.rb', line 137 def size() raise DestroyedError unless @ptr self_p = @ptr result = ::CZMQ::FFI.zuuid_size(self_p) result end |
#str ⇒ String
Returns UUID as string
147 148 149 150 151 152 |
# File 'lib/czmq-ffi-gen/czmq/ffi/zuuid.rb', line 147 def str() raise DestroyedError unless @ptr self_p = @ptr result = ::CZMQ::FFI.zuuid_str(self_p) result end |
#str_canonical ⇒ String
Return UUID in the canonical string format: 8-4-4-4-12, in lower case. Caller does not modify or free returned value. See en.wikipedia.org/wiki/Universally_unique_identifier
159 160 161 162 163 164 |
# File 'lib/czmq-ffi-gen/czmq/ffi/zuuid.rb', line 159 def str_canonical() raise DestroyedError unless @ptr self_p = @ptr result = ::CZMQ::FFI.zuuid_str_canonical(self_p) result end |