// Copyright 2020 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef QUICHE_COMMON_PLATFORM_API_QUICHE_FLAG_UTILS_H_
#define QUICHE_COMMON_PLATFORM_API_QUICHE_FLAG_UTILS_H_

#include "net/quiche/common/platform/impl/quiche_flag_utils_impl.h"

#define QUICHE_RELOADABLE_FLAG_COUNT QUICHE_RELOADABLE_FLAG_COUNT_IMPL
#define QUICHE_RELOADABLE_FLAG_COUNT_N QUICHE_RELOADABLE_FLAG_COUNT_N_IMPL

#define QUICHE_RESTART_FLAG_COUNT QUICHE_RESTART_FLAG_COUNT_IMPL
#define QUICHE_RESTART_FLAG_COUNT_N QUICHE_RESTART_FLAG_COUNT_N_IMPL

#define QUICHE_CODE_COUNT QUICHE_CODE_COUNT_IMPL
#define QUICHE_CODE_COUNT_N QUICHE_CODE_COUNT_N_IMPL

#endif  // QUICHE_COMMON_PLATFORM_API_QUICHE_FLAG_UTILS_H_
