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

#include <lib/ddk/binding_priv.h>

#if !defined(countof) && defined(__cplusplus)
#include <iterator>
#define countof(x) std::size(x)
#endif

{fragment_definition}
constexpr device_fragment_t {device_name}_fragments[] {{
  {fragment_list}
}};

// clang-format off
#define ZIRCON_DRIVER(Driver, Ops, VendorName, Version) \
  ZIRCON_DRIVER_BEGIN_PRIV_V2(Driver, Ops, VendorName, Version, 1) 0x0 \
  ZIRCON_DRIVER_END_PRIV_V2(Driver)
