Class: Vellum::TerminalNodeFunctionCallResult
- Inherits:
-
Object
- Object
- Vellum::TerminalNodeFunctionCallResult
- Defined in:
- lib/vellum_ai/types/terminal_node_function_call_result.rb
Instance Attribute Summary collapse
-
#additional_properties ⇒ Object
readonly
Returns the value of attribute additional_properties.
-
#id ⇒ Object
readonly
Returns the value of attribute id.
-
#name ⇒ Object
readonly
Returns the value of attribute name.
-
#value ⇒ Object
readonly
Returns the value of attribute value.
Class Method Summary collapse
-
.from_json(json_object:) ⇒ TerminalNodeFunctionCallResult
Deserialize a JSON object to an instance of TerminalNodeFunctionCallResult.
-
.validate_raw(obj:) ⇒ Void
Leveraged for Union-type generation, validate_raw attempts to parse the given hash and check each fields type against the current object’s property definitions.
Instance Method Summary collapse
- #initialize(name:, id: nil, value: nil, additional_properties: nil) ⇒ TerminalNodeFunctionCallResult constructor
-
#to_json(*_args) ⇒ JSON
Serialize an instance of TerminalNodeFunctionCallResult to a JSON object.
Constructor Details
#initialize(name:, id: nil, value: nil, additional_properties: nil) ⇒ TerminalNodeFunctionCallResult
15 16 17 18 19 20 21 22 23 24 |
# File 'lib/vellum_ai/types/terminal_node_function_call_result.rb', line 15 def initialize(name:, id: nil, value: nil, additional_properties: nil) # @type [String] @id = id # @type [String] The unique name given to the terminal node that produced this output. @name = name # @type [FunctionCall] @value = value # @type [OpenStruct] Additional properties unmapped to the current class definition @additional_properties = additional_properties end |
Instance Attribute Details
#additional_properties ⇒ Object (readonly)
Returns the value of attribute additional_properties.
8 9 10 |
# File 'lib/vellum_ai/types/terminal_node_function_call_result.rb', line 8 def additional_properties @additional_properties end |
#id ⇒ Object (readonly)
Returns the value of attribute id.
8 9 10 |
# File 'lib/vellum_ai/types/terminal_node_function_call_result.rb', line 8 def id @id end |
#name ⇒ Object (readonly)
Returns the value of attribute name.
8 9 10 |
# File 'lib/vellum_ai/types/terminal_node_function_call_result.rb', line 8 def name @name end |
#value ⇒ Object (readonly)
Returns the value of attribute value.
8 9 10 |
# File 'lib/vellum_ai/types/terminal_node_function_call_result.rb', line 8 def value @value end |
Class Method Details
.from_json(json_object:) ⇒ TerminalNodeFunctionCallResult
Deserialize a JSON object to an instance of TerminalNodeFunctionCallResult
30 31 32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/vellum_ai/types/terminal_node_function_call_result.rb', line 30 def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) parsed_json = JSON.parse(json_object) id = struct.id name = struct.name if parsed_json["value"].nil? value = nil else value = parsed_json["value"].to_json value = FunctionCall.from_json(json_object: value) end new(id: id, name: name, value: value, additional_properties: struct) end |
.validate_raw(obj:) ⇒ Void
Leveraged for Union-type generation, validate_raw attempts to parse the given hash and check each fields type against the current object’s property definitions.
55 56 57 58 59 |
# File 'lib/vellum_ai/types/terminal_node_function_call_result.rb', line 55 def self.validate_raw(obj:) obj.id&.is_a?(String) != false || raise("Passed value for field obj.id is not the expected type, validation failed.") obj.name.is_a?(String) != false || raise("Passed value for field obj.name is not the expected type, validation failed.") obj.value.nil? || FunctionCall.validate_raw(obj: obj.value) end |
Instance Method Details
#to_json(*_args) ⇒ JSON
Serialize an instance of TerminalNodeFunctionCallResult to a JSON object
47 48 49 |
# File 'lib/vellum_ai/types/terminal_node_function_call_result.rb', line 47 def to_json(*_args) { "id": @id, "name": @name, "value": @value }.to_json end |