# Copyright 2020 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.

# Please, read https://fuchsia.dev/fuchsia-src/contribute/docs/documentation-navigation-toc
# before making changes to this file, and add a member of the fuchsia.dev
# team as reviewer.
toc:
- title: "Overview"
  path: /docs/development/languages/c-cpp
- title: "Editor setup"
  path: /docs/development/languages/c-cpp/editors.md
- title: "Naming conventions"
  path: /docs/development/languages/c-cpp/naming.md
- title: "C++ style guide"
  path: /docs/development/languages/c-cpp/cpp-style.md
- title: "Lint"
  path: /docs/development/languages/c-cpp/lint.md
- title: "Libc support"
  path: /docs/development/languages/c-cpp/libc.md
- title: "Library restrictions"
  path: /docs/development/languages/c-cpp/library_restrictions.md
- title: "Logging"
  path: /docs/development/languages/c-cpp/logging.md
- title: "Perftest micro-benchmark library"
  path: https://fuchsia.googlesource.com/fuchsia/+/HEAD/zircon/system/ulib/perftest/README.md
- title: "C++ in Zircon"
  path: /docs/development/languages/c-cpp/cxx.md
- title: "Compile time collections"
  path: /docs/development/languages/c-cpp/compile_time_object_collections.md
- title: "fpromise::promise<> guide"
  path: /docs/development/languages/c-cpp/fpromise_promise_guide.md
- title: "fbl:: (Fuchsia Base Library) intrusive container guide"
  section:
  - include: /docs/development/languages/c-cpp/fbl_containers_guide/_toc.yaml
- title: "Thread safe asynchronous code"
  path: /docs/development/languages/c-cpp/thread-safe-async.md
