package
1.1.193
Repository: https://github.com/approov/fork-go-macho.git
Documentation: pkg.go.dev

# README

swift

TODO

Sections

  • __swift5_entry
  • __swift5_builtin
  • __swift5_reflstr
  • __swift5_fieldmd
  • __swift5_assocty
  • __swift5_proto
  • __swift5_types
  • __swift5_types2 // the section containing additional type references
  • [?] __swift5_typeref
  • __swift5_protos
  • __swift5_capture
  • __swift5_replace
  • __swift5_replac2
  • __swift5_acfuncs
  • __swift5_mpenum ?? check Foundation
  • __constg_swiftt
  • __textg_swiftm

Protocol Conformances

  • parse witness tables (I got the patterns, but there's data after the description ptr (looks like func ptrs))

Type (Conformances)

  • add type's protocol conformances to their output (will require caching/looking up type names etc)

Protocols

  • properly represent signature requirements (I believe if they are key_args they belong in PROT<A: proto, A: proto> etc)

Metadata

  • parse all the different type's metatdata

Demangle (hard)

  • pure Go Swift demangler
  • symbolic mangled type algorithm + demangler