Class: Jsapi::Meta::Schema::String

Inherits:
Base show all
Includes:
Conversion
Defined in:
lib/jsapi/meta/schema/string.rb

Constant Summary

Constants included from Base::Attributes

Base::Attributes::DEFAULT_ARRAY, Base::Attributes::DEFAULT_HASH

Instance Attribute Summary

Attributes inherited from Base

#validations

Instance Method Summary collapse

Methods included from Conversion

#convert, included

Methods inherited from Base

#default, #default_value, #deprecated, #description, #enum, #enum=, #examples, #existence, #external_docs, #initialize, #nullable?, #omittable?, #title, #type

Methods included from OpenAPI::Extensions

#add_openapi_extension, #openapi_extensions, #openapi_extensions=

Methods inherited from Base::Model

#initialize, #inspect, #merge!, #reference?, #resolve

Methods included from Base::Attributes

#attribute, #attribute_names

Constructor Details

This class inherits a constructor from Jsapi::Meta::Schema::Base

Instance Method Details

#formatObject

:attr: format The format of a string.



12
# File 'lib/jsapi/meta/schema/string.rb', line 12

attribute :format, ::String

#max_lengthObject

:attr: max_length The maximum length of a string.



17
# File 'lib/jsapi/meta/schema/string.rb', line 17

attribute :max_length

#max_length=(value) ⇒ Object

:nodoc:



31
32
33
34
# File 'lib/jsapi/meta/schema/string.rb', line 31

def max_length=(value) # :nodoc:
  add_validation('max_length', Validation::MaxLength.new(value))
  @max_length = value
end

#min_lengthObject

:attr: min_length The minimum length of a string.



22
# File 'lib/jsapi/meta/schema/string.rb', line 22

attribute :min_length

#min_length=(value) ⇒ Object

:nodoc:



36
37
38
39
# File 'lib/jsapi/meta/schema/string.rb', line 36

def min_length=(value) # :nodoc:
  add_validation('min_length', Validation::MinLength.new(value))
  @min_length = value
end

#patternObject

:attr: pattern The regular expression a string must match.



27
# File 'lib/jsapi/meta/schema/string.rb', line 27

attribute :pattern

#pattern=(value) ⇒ Object

:nodoc:



41
42
43
44
# File 'lib/jsapi/meta/schema/string.rb', line 41

def pattern=(value) # :nodoc:
  add_validation('pattern', Validation::Pattern.new(value))
  @pattern = value
end

#to_json_schemaObject

:nodoc:



46
47
48
# File 'lib/jsapi/meta/schema/string.rb', line 46

def to_json_schema # :nodoc:
  format ? super.merge(format: format) : super
end

#to_openapiObject

:nodoc:



50
51
52
# File 'lib/jsapi/meta/schema/string.rb', line 50

def to_openapi(*) # :nodoc:
  format ? super.merge(format: format) : super
end