README.md
1# Tracing Traits Generator
2
3This directory contains an implementation of a simple codegen tool
4`tracing_traits_generator` which uses FlatBuffers reflection to inspect
5user-defined tracing schema and produces a C++ header file containing additional
6traits needed for `TracingSpan::Log<T>()` and `TracingSpan::CreateChild<T>()` to
7function properly.
8
9These traits allow for compile-time lookup of user-defined tags, additional
10attributes needed for tracking backend components to handle the data.
11
12This tool is automatically invoked during a build process with the help of
13`tracing_schema_cc_library` rule in `build/build_defs.bzl`.
14
15Examples of codegen output for various input FlatBuffers schemas can be found in
16`testdata/*.baseline` files.
17