# Generated by SnakeBridge v0.12.0 - DO NOT EDIT MANUALLY # Regenerate with: mix compile # Library: dspy 3.1.2 # Python module: dspy.primitives.python_interpreter # Python class: PythonInterpreter defmodule Dspy.Primitives.PythonInterpreter do def __snakebridge_python_name__, do: "dspy.primitives.python_interpreter" def __snakebridge_python_class__, do: "PythonInterpreter" def __snakebridge_library__, do: "dspy" @opaque t :: SnakeBridge.Ref.t() @spec new(list(term()), keyword()) :: {:ok, SnakeBridge.Ref.t()} | {:error, Snakepit.Error.t()} def new(args, opts \\ []) do {args, opts} = SnakeBridge.Runtime.normalize_args_opts(args, opts) SnakeBridge.Runtime.call_class(__MODULE__, :__init__, [] ++ List.wrap(args), opts) end @spec _ensure_deno_process(SnakeBridge.Ref.t(), keyword()) :: {:ok, nil} | {:error, Snakepit.Error.t()} def _ensure_deno_process(ref, opts \\ []) do SnakeBridge.Runtime.call_method(ref, :_ensure_deno_process, [], opts) end @spec _extract_parameters(SnakeBridge.Ref.t(), term(), keyword()) :: {:ok, list(%{optional(term()) => term()})} | {:error, Snakepit.Error.t()} def _extract_parameters(ref, py_fn, opts \\ []) do SnakeBridge.Runtime.call_method(ref, :_extract_parameters, [py_fn], opts) end @spec _get_deno_dir(SnakeBridge.Ref.t(), keyword()) :: {:ok, term()} | {:error, Snakepit.Error.t()} def _get_deno_dir(ref, opts \\ []) do SnakeBridge.Runtime.call_method(ref, :_get_deno_dir, [], opts) end @spec _get_runner_path(SnakeBridge.Ref.t(), keyword()) :: {:ok, String.t()} | {:error, Snakepit.Error.t()} def _get_runner_path(ref, opts \\ []) do SnakeBridge.Runtime.call_method(ref, :_get_runner_path, [], opts) end @spec _handle_tool_call(SnakeBridge.Ref.t(), %{optional(term()) => term()}, keyword()) :: {:ok, nil} | {:error, Snakepit.Error.t()} def _handle_tool_call(ref, request, opts \\ []) do SnakeBridge.Runtime.call_method(ref, :_handle_tool_call, [request], opts) end @spec _inject_variables( SnakeBridge.Ref.t(), String.t(), %{optional(String.t()) => term()}, keyword() ) :: {:ok, String.t()} | {:error, Snakepit.Error.t()} def _inject_variables(ref, code, variables, opts \\ []) do SnakeBridge.Runtime.call_method(ref, :_inject_variables, [code, variables], opts) end @spec _mount_files(SnakeBridge.Ref.t(), keyword()) :: {:ok, term()} | {:error, Snakepit.Error.t()} def _mount_files(ref, opts \\ []) do SnakeBridge.Runtime.call_method(ref, :_mount_files, [], opts) end @spec _register_tools(SnakeBridge.Ref.t(), keyword()) :: {:ok, nil} | {:error, Snakepit.Error.t()} def _register_tools(ref, opts \\ []) do SnakeBridge.Runtime.call_method(ref, :_register_tools, [], opts) end @spec _serialize_value(SnakeBridge.Ref.t(), term(), keyword()) :: {:ok, String.t()} | {:error, Snakepit.Error.t()} def _serialize_value(ref, value, opts \\ []) do SnakeBridge.Runtime.call_method(ref, :_serialize_value, [value], opts) end @spec _sync_files(SnakeBridge.Ref.t(), keyword()) :: {:ok, term()} | {:error, Snakepit.Error.t()} def _sync_files(ref, opts \\ []) do SnakeBridge.Runtime.call_method(ref, :_sync_files, [], opts) end @spec execute(SnakeBridge.Ref.t(), String.t(), list(term()), keyword()) :: {:ok, term()} | {:error, Snakepit.Error.t()} def execute(ref, code, args, opts \\ []) do {args, opts} = SnakeBridge.Runtime.normalize_args_opts(args, opts) SnakeBridge.Runtime.call_method(ref, :execute, [code] ++ List.wrap(args), opts) end @spec shutdown(SnakeBridge.Ref.t(), keyword()) :: {:ok, nil} | {:error, Snakepit.Error.t()} def shutdown(ref, opts \\ []) do SnakeBridge.Runtime.call_method(ref, :shutdown, [], opts) end @spec start(SnakeBridge.Ref.t(), keyword()) :: {:ok, nil} | {:error, Snakepit.Error.t()} def start(ref, opts \\ []) do SnakeBridge.Runtime.call_method(ref, :start, [], opts) end end