| // Copyright 2022 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 fuchsia.examples.diagnostics; |
| |
| closed protocol Profile { |
| compose ProfileReader; |
| strict SetName(struct { |
| name string:NAME_LENGTH; |
| }); |
| |
| strict AddBalance(struct { |
| amount int64; |
| }); |
| |
| strict WithdrawBalance(struct { |
| amount int64; |
| }) -> (struct { |
| success bool; |
| }); |
| }; |
| |
| // Read only protocol for the profile. |
| closed protocol ProfileReader { |
| strict GetName() -> (struct { |
| name string:NAME_LENGTH; |
| }); |
| |
| strict GetBalance() -> (struct { |
| amount int64; |
| }); |
| }; |