Class: JSON::Schema::Leaf
- Inherits:
-
Object
- Object
- JSON::Schema::Leaf
show all
- Defined in:
- lib/json/schema/leaf.rb
Instance Method Summary
collapse
Constructor Details
#initialize ⇒ Leaf
Returns a new instance of Leaf.
5
6
7
8
9
10
|
# File 'lib/json/schema/leaf.rb', line 5
def initialize
@description = nil
@default = nil
@enum = nil
@required = nil
end
|
Instance Method Details
#default(value) ⇒ Object
16
17
18
|
# File 'lib/json/schema/leaf.rb', line 16
def default(value)
tap { @default = value }
end
|
#description(str) ⇒ Object
12
13
14
|
# File 'lib/json/schema/leaf.rb', line 12
def description(str)
tap { @description = str }
end
|
#enum(*values) ⇒ Object
20
21
22
|
# File 'lib/json/schema/leaf.rb', line 20
def enum(*values)
tap { @enum = values }
end
|
24
25
26
|
# File 'lib/json/schema/leaf.rb', line 24
def required
tap { @required = true }
end
|
#required? ⇒ Boolean
36
37
38
|
# File 'lib/json/schema/leaf.rb', line 36
def required?
@required
end
|
28
29
30
|
# File 'lib/json/schema/leaf.rb', line 28
def to_h
{description: @description, default: @default, enum: @enum}.compact
end
|
#to_json(options = {}) ⇒ Object
32
33
34
|
# File 'lib/json/schema/leaf.rb', line 32
def to_json(options = {})
to_h.to_json(options)
end
|