Class: AnyVali::UnionSchema
- Defined in:
- lib/anyvali/schemas/union_schema.rb
Constant Summary
Constants inherited from Schema
Schema::RESERVED_METADATA_KEYS
Instance Attribute Summary collapse
-
#variant_schemas ⇒ Object
readonly
Returns the value of attribute variant_schemas.
Attributes inherited from Schema
#coerce_config, #constraints, #custom_validators, #default_value, #has_default, #kind, #metadata
Instance Method Summary collapse
-
#initialize(variants:, **kwargs) ⇒ UnionSchema
constructor
A new instance of UnionSchema.
- #to_node ⇒ Object
Methods inherited from Schema
#coerce, #default, #describe, #export, #parse, #portable?, #refine, #safe_parse, type_name, #with_metadata
Constructor Details
#initialize(variants:, **kwargs) ⇒ UnionSchema
Returns a new instance of UnionSchema.
7 8 9 10 |
# File 'lib/anyvali/schemas/union_schema.rb', line 7 def initialize(variants:, **kwargs) @variant_schemas = variants.freeze super(kind: "union", **kwargs) end |
Instance Attribute Details
#variant_schemas ⇒ Object (readonly)
Returns the value of attribute variant_schemas.
5 6 7 |
# File 'lib/anyvali/schemas/union_schema.rb', line 5 def variant_schemas @variant_schemas end |
Instance Method Details
#to_node ⇒ Object
12 13 14 15 16 |
# File 'lib/anyvali/schemas/union_schema.rb', line 12 def to_node node = super node["variants"] = @variant_schemas.map(&:to_node) node end |