| // Copyright 2021 The Fuchsia Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| library fidl.llcpp.buffersize.test; |
| |
| type Array256Elements = struct { |
| value array<uint8, 256>; |
| }; |
| type Array4096Elements = struct { |
| value array<uint8, 4096>; |
| }; |
| |
| closed protocol Protocol { |
| strict RequestWith496ByteArray(struct { |
| value array<byte, 496>; |
| }); |
| strict RequestWith497ByteArray(struct { |
| value array<byte, 497>; |
| }); |
| |
| // A small request that should be stack-allocated when sending. |
| strict SmallRequestWithFlexibleType(struct { |
| u flexible union { |
| 1: value int64; |
| }; |
| }); |
| |
| strict SmallResponseWithFlexibleType() -> (struct { |
| r flexible union { |
| 1: value int64; |
| }; |
| }); |
| |
| strict RequestWith496ByteArrayAndResponseOf256Bytes(struct { |
| value array<byte, 496>; |
| }) -> (struct { |
| value array<byte, 240>; |
| }); |
| |
| strict -> EventOf256Bytes(struct { |
| value array<byte, 240>; |
| }); |
| }; |