[det]json_call(+Stream,
+Goal, -Result, +Options)If Stream is closed this library terminates the thread and related message queue.
Options are passed to json_write_dict/3 and thread_get_message/3. Additional options:
- async(:Closure)
- Do not wait for the request to complete. Instead, call
call(Closure, Data)from the client reading thread when the request is completed. If Closure istrue, ignore the reply. As we cannot inject errors as exceptions in the calling thread, possible errors are printed. - thread_alias(+Atom)
- Alias name to use for the thread that deals with incomming replies and
requests. Defaults to
json_rpc_client:<N>, where N is a unique number.
| Goal | is a callable term. The functor name is
the method. If there is a single argument that is a dict, we invoke a
JSON-RPC method using named arguments. If there is a single
argument that is a list, use the elements of the list as positional
arguments. If there are zero or more than one arguments use these as
positional arguments. Examples:
Options processed: |