Make TracedDictionary/Array implicitly constructible from TracedValue.
Allow TracedDictionary & TracedArray to be implicitly constructed from
TracedValue, similarly to TracedProto<T>.
This will allow to simplify a common case of writing a nested dictionary
/ array from
TRACE_EVENT("cat", "E", "data", [](perfetto::TracedValue ctx) {
perfetto::TracedDictionary dict = std::move(ctx).WriteDictionary();
dict.Add(...);
});
to
TRACE_EVENT("cat", "E", "data", [](perfetto::TracedDictionary dict) {
dict.Add(...);
});
R=eseckler@google.com,skyostil@google.com
CC=primiano@google.com
Bug: b/184558843
Change-Id: If5391ff3f22654a307a04a8faa1b69cc21ecbdaaPerfetto is a production-grade open-source stack for performance instrumentation and trace analysis. It offers services and libraries and for recording system-level and app-level traces, native + java heap profiling, a library for analyzing traces using SQL and a web-based UI to visualize and explore multi-GB traces.
See https://perfetto.dev/docs or the /docs/ directory for documentation.