Class: Booth::Syntaxes::Uuid

Inherits:
Object
  • Object
show all
Includes:
Logging, MethodObject
Defined in:
lib/booth/syntaxes/uuid.rb

Instance Method Summary collapse

Methods included from MethodObject

included

Instance Method Details

#callObject

Raises:

  • (ArgumentError)


10
11
12
13
14
15
# File 'lib/booth/syntaxes/uuid.rb', line 10

def call
  return Tron.success(:valid_uuid, uuid: input) if regexp.match(input.to_s)
  raise ArgumentError, "Invalid UUID: #{input.inspect}" if raise_if_invalid

  Tron.failure :invalid_uuid, uuid: nil
end

#regexpObject

For practical reasons we only accept downcased (i.e. normalized) UUIDs.



18
19
20
# File 'lib/booth/syntaxes/uuid.rb', line 18

def regexp
  /\A[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\z/
end