[TOC]

# fidl.test.emptystruct


## **PROTOCOLS**

## EmptyProtocol {#EmptyProtocol}
*Defined in [fidl.test.emptystruct/empty_struct.test.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:tools/fidl/fidlc/testdata/empty_struct.test.fidl;l=6)*


### Receive {#EmptyProtocol.Receive}




#### Response
<table>
    <tr><th>Name</th><th>Type</th></tr>
    <tr>
            <td><code>e</code></td>
            <td>
                <code><a class='link' href='#Empty'>Empty</a></code>
            </td>
        </tr></table>

### Send {#EmptyProtocol.Send}


#### Request
<table>
    <tr><th>Name</th><th>Type</th></tr>
    <tr>
            <td><code>e</code></td>
            <td>
                <code><a class='link' href='#Empty'>Empty</a></code>
            </td>
        </tr></table>



### SendAndReceive {#EmptyProtocol.SendAndReceive}


#### Request
<table>
    <tr><th>Name</th><th>Type</th></tr>
    <tr>
            <td><code>e</code></td>
            <td>
                <code><a class='link' href='#Empty'>Empty</a></code>
            </td>
        </tr></table>


#### Response
<table>
    <tr><th>Name</th><th>Type</th></tr>
    <tr>
            <td><code>e</code></td>
            <td>
                <code><a class='link' href='#Empty'>Empty</a></code>
            </td>
        </tr></table>



## **STRUCTS**

### Empty {#Empty}
*Defined in [fidl.test.emptystruct/empty_struct.test.fidl](https://cs.opensource.google/fuchsia/fuchsia/+/main:tools/fidl/fidlc/testdata/empty_struct.test.fidl;l=3)*



<table>
    <tr><th>Name</th><th>Type</th><th>Description</th><th>Default</th></tr>
</table>













