Anoma.Client.Runner (Anoma v0.34.0)

I contain logic to run nock code.

Summary

Functions

I am the client-side scry function.

I run the given Nock program with its inputs and return the result.

I turn a list into an improper list. E.g., [1,2,3] -> [1,2|3]

Functions

client_scry(list)

@spec client_scry(Noun.t()) :: :error | {:ok, Noun.t()}

I am the client-side scry function.

Given a blob keyspace, I look for a value locally at the given ID-related timestamp. If not found, send a read-only transaction to the Node for the same blob.

For RM-reserved keyspaces, I fetch data from the Node directly.

close_io_sink(io)

@spec close_io_sink(pid()) :: {:error, :timeout} | {:ok, term()}

open_io_sink()

@spec open_io_sink() :: pid()

prove(program, inputs)

@spec prove(Noun.t(), [Noun.t()]) ::
  {:ok, Noun.t(), [Noun.t()]}
  | {:error, :failed_to_prove, Nock.error(), [Noun.t()]}

I run the given Nock program with its inputs and return the result.

ro_tx_candidate(ref)

@spec ro_tx_candidate(Noun.t()) :: Noun.t()

to_improper_list(list)

@spec to_improper_list([any()]) :: maybe_improper_list(any(), any())

I turn a list into an improper list. E.g., [1,2,3] -> [1,2|3]