• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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