class Amber::Schema::ResponseSchema

Defined in:

amber/schema/response_schema.cr

Constructors

Class Method Summary

Instance Method Summary

Instance methods inherited from class Amber::Schema::Definition

errors : Array(Amber::Schema::Error) errors, parse : LegacyResult parse, raw_data : Hash(String, JSON::Any) raw_data, to_h : Hash(String, JSON::Any) to_h, validate : LegacyResult validate, validate_typed : Success(Hash(String, JSON::Any)) | Failure(Hash(String, JSON::Any)) validate_typed

Constructor methods inherited from class Amber::Schema::Definition

new(raw_data : Hash(String, JSON::Any)) new

Class methods inherited from class Amber::Schema::Definition

conditionals : Array(ConditionalGroup) conditionals, field_names : Array(String) field_names, has_conditionals? : Bool has_conditionals?, has_field?(name : String) : Bool has_field?, required_field_names : Array(String) required_field_names, uses_body_params? : Bool uses_body_params?, uses_header_params? : Bool uses_header_params?, uses_path_params? : Bool uses_path_params?, uses_query_params? : Bool uses_query_params?

Macros inherited from class Amber::Schema::Definition

content_type(*types) content_type, field(name, type, **options) field, from_body from_body, from_header from_header, from_path from_path, from_query from_query, nested(name, schema_class) nested, requires_one_of(*fields) requires_one_of, requires_together(*fields) requires_together, validate(method_name = nil, &block) validate, validates_to(success_type, failure_type = ValidationError) validates_to, when_field(field, value) when_field, when_present(field) when_present

Constructor Detail

def self.new(name : String, description : String | Nil = nil, version : String | Nil = nil, strip_null_values : Bool = false, strip_empty_arrays : Bool = false) #

[View source]

Class Method Detail

def self.conditional_groups #

[View source]
def self.content_types #

[View source]
def self.failure_type #

[View source]
def self.fields #

[View source]
def self.required_fields #

[View source]
def self.source_blocks #

[View source]
def self.success_type #

[View source]
def self.validators #

[View source]

Instance Method Detail

def conform(data : Hash(String, JSON::Any)) : Hash(String, JSON::Any) #

Helper to ensure response conforms to schema


[View source]
def parse(data : Hash(String, JSON::Any)) : LegacyResult #

[View source]
def strip_empty_arrays : Bool #

[View source]
def strip_null_values : Bool #

Additional response-specific options


[View source]
def validate(data : Hash(String, JSON::Any)) : LegacyResult #

[View source]