1 // Protocol Buffers - Google's data interchange format 2 // Copyright 2023 Google LLC. All rights reserved. 3 // 4 // Use of this source code is governed by a BSD-style 5 // license that can be found in the LICENSE file or at 6 // https://developers.google.com/open-source/licenses/bsd 7 8 // IWYU pragma: private, include "upb/reflection/def.h" 9 10 #ifndef UPB_REFLECTION_SERVICE_DEF_H_ 11 #define UPB_REFLECTION_SERVICE_DEF_H_ 12 13 #include "upb/reflection/common.h" 14 15 // Must be last. 16 #include "upb/port/def.inc" 17 18 #ifdef __cplusplus 19 extern "C" { 20 #endif 21 22 UPB_API const upb_FileDef* upb_ServiceDef_File(const upb_ServiceDef* s); 23 const upb_MethodDef* upb_ServiceDef_FindMethodByName(const upb_ServiceDef* s, 24 const char* name); 25 UPB_API const char* upb_ServiceDef_FullName(const upb_ServiceDef* s); 26 bool upb_ServiceDef_HasOptions(const upb_ServiceDef* s); 27 int upb_ServiceDef_Index(const upb_ServiceDef* s); 28 UPB_API const upb_MethodDef* upb_ServiceDef_Method(const upb_ServiceDef* s, 29 int i); 30 UPB_API int upb_ServiceDef_MethodCount(const upb_ServiceDef* s); 31 const char* upb_ServiceDef_Name(const upb_ServiceDef* s); 32 UPB_API const UPB_DESC(ServiceOptions) * 33 upb_ServiceDef_Options(const upb_ServiceDef* s); 34 const UPB_DESC(FeatureSet) * 35 upb_ServiceDef_ResolvedFeatures(const upb_ServiceDef* s); 36 37 #ifdef __cplusplus 38 } /* extern "C" */ 39 #endif 40 41 #include "upb/port/undef.inc" 42 43 #endif /* UPB_REFLECTION_SERVICE_DEF_H_ */ 44