blob: 1efd6978e7c86127f123a6d7f8806c123073958d [file] [log] [blame] [view]
# bind method
void bind
([InterfaceHandle](../../package-fidl_fidl/InterfaceHandle-class.md)<T> interfaceHandle)
<p>Binds the proxy to the given interface handle.</p>
<p>Calls to the proxy will be encoded as messages and sent over the channel
underlying the given interface handle.</p>
<p>This object must not already be bound.</p>
<p>The <code>interfaceHandle</code> parameter must not be null. The <code>channel</code> property
of the given <code>interfaceHandle</code> must not be null.</p>
## Implementation
```dart
void bind(InterfaceHandle<T> interfaceHandle) {
if (!isUnbound) {
throw FidlStateException(
"AsyncProxyController<${$interfaceName}> isn't unbound");
}
final channel = interfaceHandle.passChannel();
if (channel == null) {
throw FidlError(
"AsyncProxyController<${$interfaceName}> can't bind to null InterfaceHandle channel");
}
_reader.bind(channel);
state = InterfaceState.bound;
}
```