Skip to main content

call

Function call 

Source
pub async fn call(
    session: &Session,
    base: &str,
    target: &CallTarget,
    producer: &str,
    procedure: &str,
    params: &[String],
    body: Option<Vec<u8>>,
    attachment: Option<Vec<u8>>,
    timeout: Duration,
    slices: Option<&SliceSet>,
) -> Result<CallReport>
Expand description

Call a procedure and report every attributed answer.

  • The key composes through the typed builders (never format!), lifted to the wire with the configured base.
  • params ride the selector (?k=v;k=v), the body rides the payload (RFC 05 §1).
  • Fan-out guard: a CallTarget::Fleet call is refused when the loaded slices declare the procedure fanout = "forbidden". With no slices loaded the registry layer cannot judge — the call proceeds, and the builder/ACL layers remain (documented, not silent: the report’s key is the caller’s audit trail).
  • Exit-code semantics stay on CallReport::exit_code: an error reply is a failure, zero replies stay a distinct non-verdict (RFC 05 §3.1).