// Copyright 2018 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.

#ifndef LIB_FIDL_CPP_INTERNAL_IMPLEMENTATION_H_
#define LIB_FIDL_CPP_INTERNAL_IMPLEMENTATION_H_

#include <lib/fidl/internal.h>
#include <stdint.h>
#include <zircon/assert.h>

#include <limits>
#include <memory>

#include "lib/fidl/cpp/clone.h"
#include "lib/fidl/cpp/comparison.h"
#include "lib/fidl/cpp/encoder.h"
#include "lib/fidl/cpp/internal/logging.h"
#include "lib/fidl/cpp/traits.h"

#endif  // LIB_FIDL_CPP_INTERNAL_IMPLEMENTATION_H_
