Class: MetabaseQuerySync::IR::Model
- Inherits:
-
Dry::Struct
- Object
- Dry::Struct
- MetabaseQuerySync::IR::Model
show all
- Defined in:
- lib/metabase_query_sync/ir/model.rb
Class Method Summary
collapse
Class Method Details
.array ⇒ Object
19
20
21
|
# File 'lib/metabase_query_sync/ir/model.rb', line 19
def self.array
MetabaseQuerySync::Types::Strict::Array
end
|
.bool ⇒ Object
15
16
17
|
# File 'lib/metabase_query_sync/ir/model.rb', line 15
def self.bool
MetabaseQuerySync::Types::Strict::Bool
end
|
.integer ⇒ Object
11
12
13
|
# File 'lib/metabase_query_sync/ir/model.rb', line 11
def self.integer
MetabaseQuerySync::Types::Strict::Integer
end
|
.string ⇒ Object
7
8
9
|
# File 'lib/metabase_query_sync/ir/model.rb', line 7
def self.string
MetabaseQuerySync::Types::Strict::String
end
|
.validate_with_schema(&schema_def) ⇒ Object
23
24
25
26
27
28
29
|
# File 'lib/metabase_query_sync/ir/model.rb', line 23
def self.validate_with_schema(&schema_def)
define_singleton_method :from_h do |h|
result = Dry::Schema.JSON(&schema_def).(h)
raise "Invalid hash provided: #{result.errors.to_h}" if result.failure?
new(h)
end
end
|