# Generated by SnakeBridge v0.12.0 - DO NOT EDIT MANUALLY # Regenerate with: mix compile # Library: dspy 3.1.2 # Python module: dspy.primitives.base_module # Python class: BaseModule defmodule Dspy.Primitives.BaseModule do def __snakebridge_python_name__, do: "dspy.primitives.base_module" def __snakebridge_python_class__, do: "BaseModule" def __snakebridge_library__, do: "dspy" @opaque t :: SnakeBridge.Ref.t() @spec new(keyword()) :: {:ok, SnakeBridge.Ref.t()} | {:error, Snakepit.Error.t()} def new(opts \\ []) do SnakeBridge.Runtime.call_class(__MODULE__, :__init__, [], opts) end @spec deepcopy(SnakeBridge.Ref.t(), keyword()) :: {:ok, term()} | {:error, Snakepit.Error.t()} def deepcopy(ref, opts \\ []) do SnakeBridge.Runtime.call_method(ref, :deepcopy, [], opts) end @spec dump_state(SnakeBridge.Ref.t(), list(term()), keyword()) :: {:ok, term()} | {:error, Snakepit.Error.t()} def dump_state(ref, args, opts \\ []) do {args, opts} = SnakeBridge.Runtime.normalize_args_opts(args, opts) SnakeBridge.Runtime.call_method(ref, :dump_state, [] ++ List.wrap(args), opts) end @spec load(SnakeBridge.Ref.t(), term(), list(term()), keyword()) :: {:ok, term()} | {:error, Snakepit.Error.t()} def load(ref, path, args, opts \\ []) do {args, opts} = SnakeBridge.Runtime.normalize_args_opts(args, opts) SnakeBridge.Runtime.call_method(ref, :load, [path] ++ List.wrap(args), opts) end @spec load_state(SnakeBridge.Ref.t(), term(), keyword()) :: {:ok, term()} | {:error, Snakepit.Error.t()} def load_state(ref, state, opts \\ []) do SnakeBridge.Runtime.call_method(ref, :load_state, [state], opts) end @spec named_parameters(SnakeBridge.Ref.t(), keyword()) :: {:ok, term()} | {:error, Snakepit.Error.t()} def named_parameters(ref, opts \\ []) do SnakeBridge.Runtime.call_method(ref, :named_parameters, [], opts) end @spec named_sub_modules(SnakeBridge.Ref.t(), list(term()), keyword()) :: {:ok, term()} | {:error, Snakepit.Error.t()} def named_sub_modules(ref, args, opts \\ []) do {args, opts} = SnakeBridge.Runtime.normalize_args_opts(args, opts) SnakeBridge.Runtime.call_method(ref, :named_sub_modules, [] ++ List.wrap(args), opts) end @spec parameters(SnakeBridge.Ref.t(), keyword()) :: {:ok, term()} | {:error, Snakepit.Error.t()} def parameters(ref, opts \\ []) do SnakeBridge.Runtime.call_method(ref, :parameters, [], opts) end @spec reset_copy(SnakeBridge.Ref.t(), keyword()) :: {:ok, term()} | {:error, Snakepit.Error.t()} def reset_copy(ref, opts \\ []) do SnakeBridge.Runtime.call_method(ref, :reset_copy, [], opts) end @spec save(SnakeBridge.Ref.t(), term(), list(term()), keyword()) :: {:ok, term()} | {:error, Snakepit.Error.t()} def save(ref, path, args, opts \\ []) do {args, opts} = SnakeBridge.Runtime.normalize_args_opts(args, opts) SnakeBridge.Runtime.call_method(ref, :save, [path] ++ List.wrap(args), opts) end end