[zbitl] Make item_header_wrapper part of ContainerTraits

Looking toward BOOTFS support in libzbitl, we do not want to expose
zbi_bootfs_dirent_t directly to the user as the public form of the item
header, as we do today in the ZBI case, where item_header_wrapper is a
thin wrapper around zbi_header_t. (zbi_bootfs_dirent_t is not a
particularly useful representation of the data the user cares about.)

This change introduces a pivot in which `item_header_wrapper` becomes a
type supplied by the container traits API, rather than just being a thin
wrapper of `item_header_type` to be defined by a zbitl::Container. This
flexibility will allow us to provide something more useful in the BOOTFS
case.

Bug: 68585
Change-Id: Ide6257c63c70a1d75db59e9c7c3fa67f8f029027
Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/560422
Commit-Queue: Auto-Submit <auto-submit@fuchsia-infra.iam.gserviceaccount.com>
Fuchsia-Auto-Submit: Joshua Seaton <joshuaseaton@google.com>
Reviewed-by: Roland McGrath <mcgrathr@google.com>
1 file changed
tree: 51e1d603c0cbff8a74b0ee37dd9642801aa149b5
  1. boards/
  2. build/
  3. buildtools/
  4. bundles/
  5. docs/
  6. examples/
  7. garnet/
  8. products/
  9. scripts/
  10. sdk/
  11. src/
  12. third_party/
  13. tools/
  14. zircon/
  15. .clang-format
  16. .clang-tidy
  17. .git-blame-ignore-revs
  18. .gitattributes
  19. .gitignore
  20. .gn
  21. .style.yapf
  22. AUTHORS
  23. BUILD.gn
  24. CODE_OF_CONDUCT.md
  25. CONTRIBUTING.md
  26. LICENSE
  27. OWNERS
  28. PATENTS
  29. README.md
  30. rustfmt.toml
README.md

Fuchsia

Pink + Purple == Fuchsia (a new operating system)

What is Fuchsia?

Fuchsia is a modular, capability-based operating system. Fuchsia runs on modern 64-bit Intel and ARM processors.

Fuchsia is an open source project with a code of conduct that we expect everyone who interacts with the project to respect.

Read more about Fuchsia's principles.

How can I build and run Fuchsia?

See Getting Started.

Where can I learn more about Fuchsia?

See fuchsia.dev.