| library test.handles; |
| |
| using zx; |
| using fdf; |
| |
| protocol SomeProtocol {}; |
| |
| alias aliased_plain_handle = zx.handle; |
| alias aliased_subtype_handle = zx.handle:VMO; |
| alias aliased_rights_handle = zx.handle:<VMO, zx.rights.DUPLICATE>; |
| |
| type Handles = resource struct { |
| plain_handle zx.handle; |
| |
| bti_handle zx.handle:BTI; |
| channel_handle zx.handle:CHANNEL; |
| clock_handle zx.handle:CLOCK; |
| debuglog_handle zx.handle:LOG; |
| event_handle zx.handle:EVENT; |
| eventpair_handle zx.handle:EVENTPAIR; |
| exception_handle zx.handle:EXCEPTION; |
| fifo_handle zx.handle:FIFO; |
| guest_handle zx.handle:GUEST; |
| interrupt_handle zx.handle:INTERRUPT; |
| iommu_handle zx.handle:IOMMU; |
| job_handle zx.handle:JOB; |
| pager_handle zx.handle:PAGER; |
| pmt_handle zx.handle:PMT; |
| port_handle zx.handle:PORT; |
| process_handle zx.handle:PROCESS; |
| profile_handle zx.handle:PROFILE; |
| resource_handle zx.handle:RESOURCE; |
| socket_handle zx.handle:SOCKET; |
| suspendtoken_handle zx.handle:SUSPEND_TOKEN; |
| thread_handle zx.handle:THREAD; |
| timer_handle zx.handle:TIMER; |
| vcpu_handle zx.handle:VCPU; |
| vmar_handle zx.handle:VMAR; |
| vmo_handle zx.handle:VMO; |
| |
| rights_handle zx.handle:<VMO, zx.rights.DUPLICATE | zx.rights.READ>; |
| |
| |
| aliased_plain_handle_field aliased_plain_handle; |
| aliased_subtype_handle_field aliased_subtype_handle; |
| aliased_rights_handle_field aliased_rights_handle; |
| |
| some_protocol client_end:SomeProtocol; |
| request_some_protocol server_end:SomeProtocol; |
| }; |
| |
| @transport("Driver") |
| protocol DriverProtocol {}; |
| |
| @bindings_denylist("hlcpp,dart,go,rust") |
| type FdfHandles = resource struct { |
| fdf_channel_handle fdf.handle:CHANNEL; |
| |
| client_end_driver client_end:DriverProtocol; |
| server_end_driver server_end:DriverProtocol; |
| }; |