tracepoint_perf 0.5.0

Rust API for reading and writing perf.data files
Documentation
# perf.data file format

This crate provides support for reading and writing files compatible with the
`perf.data` files generated by the Linux
[perf](https://www.man7.org/linux/man-pages/man1/perf-record.1.html) tool.

Core types:

- `PerfDataFileReader` supports enumerating the headers and events from a `perf.data` file.
  It exposes the data using types from the [tracepoint_decode]../tracepoint_decode crate,
  making it easy to decode the resulting events and their fields.
- `PerfDataFileWriter` supports writing a `perf.data` file containing caller-supplied headers
  and event data. It includes support for synthesizing some of the more commonly-used headers
  from `tracepoint_decode` metadata types, including the `TRACING_DATA` and `EVENT_DESC`
  headers.

Examples:

- **[decode_perf]examples/decode_perf.rs:** demonstrates using `PerfDataFileReader` along
  with the types from the [tracepoint_decode]../tracepoint_decode crate to decode a
  `perf.data` file and write it as text to stdout.
- **[decode_perf_to_json]examples/decode_perf_to_json.rs:** expands on the `decode_perf`
  sample and converts event data to JSON.
- **[rewrite_perf]examples/rewrite_perf.rs:** demonstrates using `PerfDataFileWriter`,
  generating a new `perf.data` file using content from an existing `perf.data` file.