Module: JsonModel::Types
- Defined in:
- lib/json_model/types.rb,
lib/json_model/types/ref.rb,
lib/json_model/types/alias.rb,
lib/json_model/types/any_of.rb,
lib/json_model/types/one_of.rb
Defined Under Namespace
Classes: Alias, AnyOf, OneOf, Ref
Constant Summary collapse
- Date =
Dry::Types['date'].(format: 'date')
- DateTime =
Dry::Types['date_time'].(format: 'date-time')
- Email =
String.constrained(format: URI::MailTo::EMAIL_REGEXP).(format: 'email')
- Hostname =
String.constrained( format: /(?i)^(?:([a-z0-9-]+|\*)\.)?([a-z0-9-]{1,61})\.([a-z0-9]{2,7})$/, ).(format: 'hostname')
- IPv4 =
String.constrained( format: ::Resolv::IPv4::Regex, ).(format: 'ipv4')
- IPv6 =
String.constrained( format: ::Resolv::IPv6::Regex, ).(format: 'ipv6')
- Time =
Dry::Types['time'].(format: 'time')
- UUID =
String.constrained( format: /^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/, ).(format: 'uuid')
- URI =
String.constrained( format: ::URI::DEFAULT_PARSER.make_regexp, ).(format: 'uri')
- UriReference =
String.constrained( format: %r{^(([^:/?#]+):)?(//([^/?#]*))?([^?#]*)(\?([^#]*))?(#(.*))?}, ).(format: 'uri-reference')
- Regex =
String.constrained( format: %r{\A(/?)(.+)\1([a-z]*)\z}i, ).(format: 'regex')
- UniqueArray =
Array.constrained(unique: true)