For more context see  (XXX to be integrated)
A SturdyRef refers to something in the host vat by a swiss number; the host vat may at any time change or forget the number/referent association.
getRcvr (both /0 and /2)
Returns a promise for a live ref to the referent of this SturdyRef.
The promise can break if:
- A connection attempt fails (for /0), or the timeout is reached (for /2).
- The referent is a broken ref.
- The host vat no longer has this object registered for lookup by this SturdyRef (no longer has an entry for this SturdyRef's SwissNumber).
This operation can only be done while the local comm system is on the air; otherwise it throws XXX specify exception.
- Signature: getRcvr() :any
If there is not already a connection to the host vat, and this vat cannot currently connect to the host vat, resolves to a broken ref.
Continuously attempts to connect; doesn't fail unless the absolute time timeout is reached.
pollMillis is a polling interval hint. (XXX the following is an implementation description; rewrite as spec) Until we have VLS rendezvous support, the best we can do is poll the attempt to connect to the hosting vat. pollMillis says how often we should do so, and thereby tradeoff CPU/comm against promptness. Once we have VLS rendezvous support, then we will post a long-lived query with the relevant VLSes, and refresh this query at a frequency determined by those VLSes, not by our client. This refreshing is also a polling loop, but can be long without impeding the responsiveness of getting connected.
timeout is the time in absMillis at which we should give up trying to connect. Once the time has passed, we should resolve the result to broken rather than continuing to poll or refresh. A value of -1 means to keep trying forever.
SturdyRefs print as "<SturdyRef>", unless they are to the current vat, in which case they print as "<SturdyRef to referent>".
? introducer.onTheAir(); null ? def [p,r] := Ref.promise() # value: [<Promise>, <Resolver>] ? def sr := makeSturdyRef.temp(p) # value: <SturdyRef> XXX is the above behavior, printing as a far sturdyref until the promise resolves, a bug? ? r.resolve("foo") ? sr # value: <SturdyRef to "foo"> ? <captp://*firstname.lastname@example.org/24> # a remote sturdyref # value: <SturdyRef>