Current section

Files

Jump to
dspex lib snakebridge_generated dspy old_field.ex
Raw

lib/snakebridge_generated/dspy/old_field.ex

# Generated by SnakeBridge v0.16.0 - DO NOT EDIT MANUALLY
# Regenerate with: mix compile
# Library: dspy 3.1.3
# Python module: dspy
# Python class: OldField
defmodule Dspy.OldField do
@moduledoc """
A more ergonomic datatype that infers prefix and desc if omitted.
"""
def __snakebridge_python_name__, do: "dspy"
def __snakebridge_python_class__, do: "OldField"
def __snakebridge_library__, do: "dspy"
@opaque t :: SnakeBridge.Ref.t()
@doc """
Initialize self. See help(type(self)) for accurate signature.
## Parameters
- `prefix` (term() keyword-only default: None)
- `desc` (term() keyword-only default: None)
- `input` (term() keyword-only, required)
- `format` (term() keyword-only default: None)
"""
@spec new(keyword()) :: {:ok, SnakeBridge.Ref.t()} | {:error, Snakepit.Error.t()}
def new(opts \\ []) do
kw_keys = opts |> Keyword.keys() |> Enum.map(&to_string/1)
missing_kw = ["input"] |> Enum.reject(&(&1 in kw_keys))
if missing_kw != [] do
raise ArgumentError,
"Missing required keyword-only arguments: " <> Enum.join(missing_kw, ", ")
end
SnakeBridge.Runtime.call_class(__MODULE__, :__init__, [], opts)
end
@doc """
Set the prefix if it's not provided explicitly.
## Parameters
- `key` (term())
- `inferred_prefix` (term())
## Returns
- `term()`
"""
@spec finalize(SnakeBridge.Ref.t(), term(), term(), keyword()) ::
{:ok, term()} | {:error, Snakepit.Error.t()}
def finalize(ref, key, inferred_prefix, opts \\ []) do
SnakeBridge.Runtime.call_method(ref, :finalize, [key, inferred_prefix], opts)
end
end