Class: Booth::Syntaxes::Uuid

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

Instance Method Summary collapse

Instance Method Details

#callObject

Raises:

  • (ArgumentError)


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

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.



20
21
22
# File 'lib/booth/syntaxes/uuid.rb', line 20

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