Class: Retab::AllItemsMatchCondition

Inherits:
Types::BaseModel show all
Defined in:
lib/retab/workflow_tests/all_items_match_condition.rb

Constant Summary collapse

HASH_ATTRS =
{
  kind: :kind,
  condition: :condition
}.freeze

Instance Attribute Summary collapse

Attributes inherited from Types::BaseModel

#last_response

Instance Method Summary collapse

Methods inherited from Types::BaseModel

deep_symbolize, #inspect, normalize, #to_h, #to_json

Constructor Details

#initialize(json) ⇒ AllItemsMatchCondition

Returns a new instance of AllItemsMatchCondition.



18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
# File 'lib/retab/workflow_tests/all_items_match_condition.rb', line 18

def initialize(json)
  super()
  hash = self.class.normalize(json)
  @kind = hash[:kind]
  @condition = hash[:condition] ? (
    case hash[:condition][:kind]
    when "all_items_match"
      Retab::AllItemsMatchCondition.new(hash[:condition])
    when "any_item_matches"
      Retab::AnyItemMatchesCondition.new(hash[:condition])
    when "array_contains"
      Retab::ArrayContainsCondition.new(hash[:condition])
    when "between"
      Retab::BetweenCondition.new(hash[:condition])
    when "ends_with"
      Retab::EndsWithCondition.new(hash[:condition])
    when "json_schema_valid"
      Retab::JsonSchemaValidCondition.new(hash[:condition])
    when "length_compare"
      Retab::LengthCompareCondition.new(hash[:condition])
    when "llm_judged_as"
      Retab::LlmJudgedAsCondition.new(hash[:condition])
    when "llm_not_judged_as"
      Retab::LlmNotJudgedAsCondition.new(hash[:condition])
    when "not_contains"
      Retab::NotContainsCondition.new(hash[:condition])
    when "not_equals"
      Retab::NotEqualsCondition.new(hash[:condition])
    when "not_exists"
      Retab::NotExistsCondition.new(hash[:condition])
    when "number_compare"
      Retab::NumberCompareCondition.new(hash[:condition])
    when "object_contains"
      Retab::ObjectContainsCondition.new(hash[:condition])
    when "similarity_gte"
      Retab::SimilarityGteCondition.new(hash[:condition])
    else
      hash[:condition]
    end
  ) : nil
end

Instance Attribute Details

#conditionObject

Returns the value of attribute condition.



13
14
15
# File 'lib/retab/workflow_tests/all_items_match_condition.rb', line 13

def condition
  @condition
end

#kindObject

Returns the value of attribute kind.



13
14
15
# File 'lib/retab/workflow_tests/all_items_match_condition.rb', line 13

def kind
  @kind
end