init commit

This commit is contained in:
2026-03-09 23:09:46 -04:00
parent 5cbc493cc5
commit 5da77e3360
73 changed files with 9935 additions and 103 deletions
+2 -2
View File
@@ -35,7 +35,7 @@ defmodule CljElixir.NRepl.Handler do
code = Map.get(msg, "code", "")
# Capture stdout inside the Agent process where eval actually runs
{output, result} = SessionManager.eval_with_capture(manager, session, code)
{output, result, ns} = SessionManager.eval_with_capture(manager, session, code)
responses = []
@@ -51,7 +51,7 @@ defmodule CljElixir.NRepl.Handler do
responses =
case result do
{:ok, value} ->
responses ++ [%{"id" => id, "session" => session, "value" => value, "ns" => "user"}]
responses ++ [%{"id" => id, "session" => session, "value" => value, "ns" => ns}]
{:error, error} ->
responses ++
+5 -4
View File
@@ -87,21 +87,22 @@ defmodule CljElixir.NRepl.SessionManager do
def handle_call({:eval_with_capture, id, code}, _from, state) do
case Map.get(state.sessions, id) do
nil ->
{:reply, {"", {:error, "unknown session"}}, state}
{:reply, {"", {:error, "unknown session"}, "user"}, state}
pid ->
{output, result} =
{output, result, ns} =
Agent.get_and_update(
pid,
fn repl_state ->
{output, eval_result, new_state} = eval_capturing_output(code, repl_state)
ns = CljElixir.REPL.current_ns(new_state)
{{output, eval_result}, new_state}
{{output, eval_result, ns}, new_state}
end,
:infinity
)
{:reply, {output, result}, state}
{:reply, {output, result, ns}, state}
end
end