Make state the first argument of comparison functions

The `State` type is the context holder for comparison operations and
will soon include a `Graph` reference. The functions are:

* `Removed`
* `Added`
* `Compare`
* `Equals`

The argument lists all now look like:

1. `state`
2. nodes

This should make for more readable and maintainable code.

A related change will follow to consolidate and pass reporting context
in a single structure.

PiperOrigin-RevId: 435316578
Change-Id: Iad5eccf73280a6a7f297ccca583fba9688537ee8
3 files changed
tree: 26770e4d53dbf0e423265c72fda739a32fbddbf9
  1. fuzz/
  2. abigail_reader.cc
  3. abigail_reader.h
  4. btf_reader.cc
  5. btf_reader.h
  6. btfinfo.cc
  7. CONTRIBUTING.md
  8. crc.h
  9. error.h
  10. error_test.cc
  11. id.h
  12. LICENSE
  13. METADATA
  14. MODULE_LICENSE_LLVM
  15. order.h
  16. order_test.cc
  17. OWNERS
  18. README.md
  19. scc.h
  20. scc_test.cc
  21. stg.cc
  22. stg.h
  23. stgdiff.cc
README.md

Symbol-Type Graph (STG)

The STG (symbol-type graph) is an ABI representation and this project contains tools for the creation and comparison of such representations. At present parsers exist for libabigail's ABI XML (C types only) and BTF. The ABI diff tool, stgdiff, supports multiple reporting options. This software currently depends on libabigail for ELF symbol functionality, on libxml2 for XML parsing and on Linux UAPI headers for BTF types.

How to build the project

TBD

Contributions

See CONTRIBUTING.md for details.