1 // Copyright (c) 2017 Nuxi (https://nuxi.nl/) and contributors. 2 // 3 // SPDX-License-Identifier: BSD-2-Clause 4 5 #include <arpc++/arpc++.h> 6 7 #include "arpc_protocol.h" 8 9 using namespace arpc; 10 11 // StatusCode is an enumeration that is declared in public headers, but 12 // depends on status code constants that are part of arpc_protocol.proto. 13 // Add static assertions to ensure these remain in sync. 14 static_assert(int(StatusCode::UNKNOWN) == arpc_protocol::StatusCode::UNKNOWN, 15 "Status codes must match at the message and API level."); 16 static_assert(int(StatusCode::ABORTED) == arpc_protocol::StatusCode::ABORTED, 17 "Status codes must match at the message and API level."); 18 static_assert(int(StatusCode::ALREADY_EXISTS) == 19 arpc_protocol::StatusCode::ALREADY_EXISTS, 20 "Status codes must match at the message and API level."); 21 static_assert(int(StatusCode::CANCELLED) == 22 arpc_protocol::StatusCode::CANCELLED, 23 "Status codes must match at the message and API level."); 24 static_assert(int(StatusCode::DATA_LOSS) == 25 arpc_protocol::StatusCode::DATA_LOSS, 26 "Status codes must match at the message and API level."); 27 static_assert(int(StatusCode::DEADLINE_EXCEEDED) == 28 arpc_protocol::StatusCode::DEADLINE_EXCEEDED, 29 "Status codes must match at the message and API level."); 30 static_assert(int(StatusCode::FAILED_PRECONDITION) == 31 arpc_protocol::StatusCode::FAILED_PRECONDITION, 32 "Status codes must match at the message and API level."); 33 static_assert(int(StatusCode::INTERNAL) == arpc_protocol::StatusCode::INTERNAL, 34 "Status codes must match at the message and API level."); 35 static_assert(int(StatusCode::INVALID_ARGUMENT) == 36 arpc_protocol::StatusCode::INVALID_ARGUMENT, 37 "Status codes must match at the message and API level."); 38 static_assert(int(StatusCode::NOT_FOUND) == 39 arpc_protocol::StatusCode::NOT_FOUND, 40 "Status codes must match at the message and API level."); 41 static_assert(int(StatusCode::OK) == arpc_protocol::StatusCode::OK, 42 "Status codes must match at the message and API level."); 43 static_assert(int(StatusCode::OUT_OF_RANGE) == 44 arpc_protocol::StatusCode::OUT_OF_RANGE, 45 "Status codes must match at the message and API level."); 46 static_assert(int(StatusCode::PERMISSION_DENIED) == 47 arpc_protocol::StatusCode::PERMISSION_DENIED, 48 "Status codes must match at the message and API level."); 49 static_assert(int(StatusCode::RESOURCE_EXHAUSTED) == 50 arpc_protocol::StatusCode::RESOURCE_EXHAUSTED, 51 "Status codes must match at the message and API level."); 52 static_assert(int(StatusCode::UNAUTHENTICATED) == 53 arpc_protocol::StatusCode::UNAUTHENTICATED, 54 "Status codes must match at the message and API level."); 55 static_assert(int(StatusCode::UNAVAILABLE) == 56 arpc_protocol::StatusCode::UNAVAILABLE, 57 "Status codes must match at the message and API level."); 58 static_assert(int(StatusCode::UNIMPLEMENTED) == 59 arpc_protocol::StatusCode::UNIMPLEMENTED, 60 "Status codes must match at the message and API level."); 61