func formatCapDescriptor(w io.Writer, c rpccapnp.CapDescriptor) { switch c.Which() { case rpccapnp.CapDescriptor_Which_none: fmt.Fprint(w, "none") case rpccapnp.CapDescriptor_Which_senderHosted: fmt.Fprintf(w, "sender-hosted %d", c.SenderHosted()) case rpccapnp.CapDescriptor_Which_senderPromise: fmt.Fprintf(w, "sender promise %d", c.SenderPromise()) case rpccapnp.CapDescriptor_Which_receiverHosted: fmt.Fprintf(w, "receiver-hosted %d", c.ReceiverHosted()) case rpccapnp.CapDescriptor_Which_receiverAnswer: ans, _ := c.ReceiverAnswer() fmt.Fprint(w, "receiver answer ") formatPromisedAnswer(w, ans) case rpccapnp.CapDescriptor_Which_thirdPartyHosted: fmt.Fprint(w, "third-party hosted") default: fmt.Fprintf(w, "UNKNOWN CAPABILITY which=%v", c.Which()) } }