/* This file was generated by upb_generator from the input file:
 *
 *     google/api/annotations.proto
 *
 * Do not edit -- your changes will be discarded when the file is
 * regenerated. */

#ifndef GOOGLE_API_ANNOTATIONS_PROTO_UPB_H_
#define GOOGLE_API_ANNOTATIONS_PROTO_UPB_H_

#include "upb/generated_code_support.h"

#include "google/api/annotations.upb_minitable.h"

#include "google/api/http.upb_minitable.h"
#include "google/protobuf/descriptor.upb_minitable.h"

// Must be last.
#include "upb/port/def.inc"

#ifdef __cplusplus
extern "C" {
#endif

struct google_protobuf_MethodOptions;


UPB_INLINE bool google_api_has_http(const struct google_protobuf_MethodOptions* msg) {
  return upb_Message_HasExtension((upb_Message*)msg, &google_api_http_ext);
}
UPB_INLINE void google_api_clear_http(struct google_protobuf_MethodOptions* msg) {
  upb_Message_ClearExtension((upb_Message*)msg, &google_api_http_ext);
}
UPB_INLINE const struct google_api_HttpRule* google_api_http(const struct google_protobuf_MethodOptions* msg) {
  const upb_MiniTableExtension* ext = &google_api_http_ext;
  UPB_ASSUME(upb_MiniTableField_IsScalar(&ext->UPB_PRIVATE(field)));
  UPB_ASSUME(UPB_PRIVATE(_upb_MiniTableField_GetRep)(
                 &ext->UPB_PRIVATE(field)) == kUpb_FieldRep_8Byte);
  const struct google_api_HttpRule* default_val = NULL;
  const struct google_api_HttpRule* ret;
  _upb_Message_GetExtensionField((upb_Message*)msg, ext, &default_val, &ret);
  return ret;
}
UPB_INLINE void google_api_set_http(struct google_protobuf_MethodOptions* msg, const struct google_api_HttpRule* val, upb_Arena* arena) {
  const upb_MiniTableExtension* ext = &google_api_http_ext;
  UPB_ASSUME(upb_MiniTableField_IsScalar(&ext->UPB_PRIVATE(field)));
  UPB_ASSUME(UPB_PRIVATE(_upb_MiniTableField_GetRep)(
                 &ext->UPB_PRIVATE(field)) == kUpb_FieldRep_8Byte);
  bool ok = _upb_Message_SetExtensionField((upb_Message*)msg, ext, &val, arena);
  UPB_ASSERT(ok);
}
#ifdef __cplusplus
}  /* extern "C" */
#endif

#include "upb/port/undef.inc"

#endif  /* GOOGLE_API_ANNOTATIONS_PROTO_UPB_H_ */
