IsabelleClient.Raw (isabelle_elixir v0.3.0)
View SourceRaw-socket Isabelle client.
This profile exposes the TCP socket and leaves session ids and asynchronous task waiting explicit. It is useful for protocol-level control and for understanding Isabelle server messages directly.
Summary
Functions
Sends an async command and returns a running %IsabelleClient.Task{}.
Waits for an asynchronous task to finish or fail.
Starts a session_build task and returns its task handle.
Requests cancellation of an Isabelle asynchronous task by task id.
Closes a raw TCP socket.
Runs a synchronous Isabelle command and returns {:ok, body} or {:error, body}.
Connects to an Isabelle server and returns a raw TCP socket.
Round-trips a JSON value through Isabelle's echo command.
Returns the server command names supported by Isabelle.
Force-kills a local resident Isabelle server by name.
Lists local resident Isabelle servers known to Isabelle.
Starts a local resident Isabelle server via isabelle server.
Runs Isabelle's synchronous purge_theories command.
Receives one framed Isabelle server response from a raw socket.
Asks the Isabelle server process to shut down.
Starts a session_start task and returns its task handle.
Starts a session_stop task for a session struct or session id.
Starts a use_theories task and returns its task handle.
Functions
Sends an async command and returns a running %IsabelleClient.Task{}.
Use await_task/3 to collect later NOTE messages and the final
FINISHED or FAILED response.
Pending NOTE frames from earlier tasks are skipped while waiting for the
command acknowledgement.
Waits for an asynchronous task to finish or fail.
Returns {:ok, task} for FINISHED and {:error, task} for FAILED.
Task notes received while waiting are stored in task.notes.
Starts a session_build task and returns its task handle.
Requests cancellation of an Isabelle asynchronous task by task id.
Closes a raw TCP socket.
Runs a synchronous Isabelle command and returns {:ok, body} or {:error, body}.
Connects to an Isabelle server and returns a raw TCP socket.
Use the server password plus host/port from new_server/2, list_servers/0,
or another Isabelle server process reachable on the network.
Round-trips a JSON value through Isabelle's echo command.
Returns the server command names supported by Isabelle.
Force-kills a local resident Isabelle server by name.
Lists local resident Isabelle servers known to Isabelle.
Starts a local resident Isabelle server via isabelle server.
Alias for await_task/3.
Runs Isabelle's synchronous purge_theories command.
Receives one framed Isabelle server response from a raw socket.
Asks the Isabelle server process to shut down.
Starts a session_start task and returns its task handle.
Arguments are forwarded to Isabelle. session_start accepts session_build
arguments (:session, :preferences, :options, :dirs,
:include_sessions, :verbose) plus :print_mode.
Starts a session_stop task for a session struct or session id.
Starts a use_theories task and returns its task handle.
Arguments are forwarded to Isabelle and may include :session_id,
:theories, :master_dir, :pretty_margin, :unicode_symbols,
:export_pattern, :check_delay, :check_limit, :watchdog_timeout, and
:nodes_status_delay.