/* This file was generated by upbc (the upb compiler) from the input
 * file:
 *
 *     envoy/api/v2/rds.proto
 *
 * Do not edit -- your changes will be discarded when the file is
 * regenerated. */

#include <stddef.h>
#include "upb/msg.h"
#include "envoy/api/v2/rds.upb.h"
#include "envoy/api/v2/discovery.upb.h"
#include "google/api/annotations.upb.h"
#include "google/protobuf/wrappers.upb.h"
#include "envoy/annotations/resource.upb.h"
#include "udpa/annotations/migrate.upb.h"
#include "validate/validate.upb.h"
#include "envoy/api/v2/route.upb.h"

#include "upb/port_def.inc"

const upb_msglayout envoy_api_v2_RdsDummy_msginit = {
  NULL,
  NULL,
  UPB_SIZE(0, 0), 0, false,
};

#include "upb/port_undef.inc"

