Class: Attributor::String

Inherits:
Object
  • Object
show all
Includes:
Type
Defined in:
lib/attributor/types/string.rb

Class Method Summary collapse

Methods included from Type

included

Class Method Details

.example(context = nil, options: {}) ⇒ Object


19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/attributor/types/string.rb', line 19

def self.example(context=nil, options:{})
  if options[:regexp]
    begin
      # It may fail to generate an example, see bug #72.
      options[:regexp].gen
    rescue => e
      'Failed to generate example for %s : %s' % [ options[:regexp].inspect, e.message]
    end
  else
    /\w+/.gen
  end
end

.familyObject


32
33
34
# File 'lib/attributor/types/string.rb', line 32

def self.family
  'string'
end

.load(value, context = Attributor::DEFAULT_ROOT_CONTEXT, **options) ⇒ Object


9
10
11
12
13
14
15
16
17
# File 'lib/attributor/types/string.rb', line 9

def self.load(value,context=Attributor::DEFAULT_ROOT_CONTEXT, **options)
  if value.kind_of?(Enumerable)
    raise IncompatibleTypeError,  context: context, value_type: value.class, type: self
  end

  value && String(value)
rescue
  super
end

.native_typeObject


5
6
7
# File 'lib/attributor/types/string.rb', line 5

def self.native_type
  return ::String
end