Class: Cassandra::Uuid
- Inherits:
-
Object
- Object
- Cassandra::Uuid
- Defined in:
- lib/cassandra/uuid.rb,
lib/cassandra/uuid/generator.rb
Overview
Represents a UUID value.
This is a very basic implementation of UUIDs and exists more or less just to encode and decode UUIDs from and to Cassandra.
If you want to generate UUIDs see Generator.
Direct Known Subclasses
Defined Under Namespace
Classes: Generator
Instance Method Summary collapse
- #hash ⇒ Object
-
#initialize(uuid) ⇒ Uuid
constructor
Creates a new UUID either from a string (expected to be on the standard 8-4-4-4-12 form, or just 32 characters without hyphens), or from a 128 bit number.
-
#to_s ⇒ Object
Returns a string representation of this UUID in the standard 8-4-4-4-12 form.
-
#value ⇒ Bignum
(also: #to_i)
Returns the numerical representation of this UUID.
Constructor Details
#initialize(uuid) ⇒ Uuid
Creates a new UUID either from a string (expected to be on the standard 8-4-4-4-12 form, or just 32 characters without hyphens), or from a 128 bit number.
34 35 36 37 38 39 40 41 |
# File 'lib/cassandra/uuid.rb', line 34 def initialize(uuid) case uuid when String @n = from_s(uuid) else @n = uuid end end |
Instance Method Details
#hash ⇒ Object
56 57 58 |
# File 'lib/cassandra/uuid.rb', line 56 def hash @n.hash end |
#to_s ⇒ Object
Returns a string representation of this UUID in the standard 8-4-4-4-12 form.
45 46 47 48 49 50 51 52 53 54 |
# File 'lib/cassandra/uuid.rb', line 45 def to_s @s ||= begin s = RAW_FORMAT % @n s.insert(20, HYPHEN) s.insert(16, HYPHEN) s.insert(12, HYPHEN) s.insert( 8, HYPHEN) s end end |
#value ⇒ Bignum Also known as: to_i
Returns the numerical representation of this UUID
64 65 66 |
# File 'lib/cassandra/uuid.rb', line 64 def value @n end |