class Vellum::WorkflowNodeResultData
def self.api(member:)
-
(WorkflowNodeResultData)-
Parameters:
-
member(ApiNodeResult) --
def self.api(member:) new(member: member, discriminant: "API") end
def self.code_execution(member:)
-
(WorkflowNodeResultData)-
Parameters:
-
member(CodeExecutionNodeResult) --
def self.code_execution(member:) new(member: member, discriminant: "CODE_EXECUTION") end
def self.conditional(member:)
-
(WorkflowNodeResultData)-
Parameters:
-
member(ConditionalNodeResult) --
def self.conditional(member:) new(member: member, discriminant: "CONDITIONAL") end
def self.from_json(json_object:)
-
(WorkflowNodeResultData)-
Parameters:
-
json_object(JSON) --
def self.from_json(json_object:) struct = JSON.parse(json_object, object_class: OpenStruct) member = case struct.type when "PROMPT" PromptNodeResult.from_json(json_object: json_object) when "SEARCH" SearchNodeResult.from_json(json_object: json_object) when "TEMPLATING" TemplatingNodeResult.from_json(json_object: json_object) when "CODE_EXECUTION" CodeExecutionNodeResult.from_json(json_object: json_object) when "CONDITIONAL" ConditionalNodeResult.from_json(json_object: json_object) when "API" ApiNodeResult.from_json(json_object: json_object) when "TERMINAL" TerminalNodeResult.from_json(json_object: json_object) when "SUBWORKFLOW" SubworkflowNodeResult.from_json(json_object: json_object) else PromptNodeResult.from_json(json_object: json_object) end new(member: member, discriminant: struct.type) end
def self.prompt(member:)
-
(WorkflowNodeResultData)-
Parameters:
-
member(PromptNodeResult) --
def self.prompt(member:) new(member: member, discriminant: "PROMPT") end
def self.search(member:)
-
(WorkflowNodeResultData)-
Parameters:
-
member(SearchNodeResult) --
def self.search(member:) new(member: member, discriminant: "SEARCH") end
def self.subworkflow(member:)
-
(WorkflowNodeResultData)-
Parameters:
-
member(SubworkflowNodeResult) --
def self.subworkflow(member:) new(member: member, discriminant: "SUBWORKFLOW") end
def self.templating(member:)
-
(WorkflowNodeResultData)-
Parameters:
-
member(TemplatingNodeResult) --
def self.templating(member:) new(member: member, discriminant: "TEMPLATING") end
def self.terminal(member:)
-
(WorkflowNodeResultData)-
Parameters:
-
member(TerminalNodeResult) --
def self.terminal(member:) new(member: member, discriminant: "TERMINAL") end
def self.validate_raw(obj:)
-
(Void)-
Parameters:
-
obj(Object) --
def self.validate_raw(obj:) case obj.type when "PROMPT" PromptNodeResult.validate_raw(obj: obj) when "SEARCH" SearchNodeResult.validate_raw(obj: obj) when "TEMPLATING" TemplatingNodeResult.validate_raw(obj: obj) when "CODE_EXECUTION" CodeExecutionNodeResult.validate_raw(obj: obj) when "CONDITIONAL" ConditionalNodeResult.validate_raw(obj: obj) when "API" ApiNodeResult.validate_raw(obj: obj) when "TERMINAL" TerminalNodeResult.validate_raw(obj: obj) when "SUBWORKFLOW" SubworkflowNodeResult.validate_raw(obj: obj) else raise("Passed value matched no type within the union, validation failed.") end end
def initialize(member:, discriminant:)
-
(WorkflowNodeResultData)-
Parameters:
-
discriminant(String) -- -
member(Object) --
def initialize(member:, discriminant:) # @type [Object] @member = member # @type [String] @discriminant = discriminant end
def is_a?(obj)
-
(Boolean)-
Parameters:
-
obj(Object) --
def is_a?(obj) @member.is_a?(obj) end
def to_json(*_args)
-
(JSON)-
def to_json(*_args) case @discriminant when "PROMPT" { **@member.to_json, type: @discriminant }.to_json when "SEARCH" { **@member.to_json, type: @discriminant }.to_json when "TEMPLATING" { **@member.to_json, type: @discriminant }.to_json when "CODE_EXECUTION" { **@member.to_json, type: @discriminant }.to_json when "CONDITIONAL" { **@member.to_json, type: @discriminant }.to_json when "API" { **@member.to_json, type: @discriminant }.to_json when "TERMINAL" { **@member.to_json, type: @discriminant }.to_json when "SUBWORKFLOW" { **@member.to_json, type: @discriminant }.to_json else { "type": @discriminant, value: @member }.to_json end @member.to_json end