#pdb #dia

legolas

A Microsoft Program Database (PDB) parser

1 unstable release

Uses old Rust 2015

0.1.0 Dec 1, 2016

#4 in #dia

Apache-2.0/MIT

6KB

Legolas

](https://crates.io/crates/legolas) Build Status

This library will hopefully eventually become a companion to Gimli, the zero-copy DWARF parser, but instead providing access to Microsoft's Program Database (PDB) debugging format.

The goals of the library are basically the same as Gimli's.

  • Zero copy: Use the original memory of the input (when possible, it isn't always the case due to the PDB format, but I digress). This is in stark contrast to the only "blessed" interface for reading PDB files, the DIA SDK, which at a minimum will allocate a wide character string for every string in the PDB (function names, type names, etc), even though, at its current version, the string data is only ever stored as plain ASCII (AFAICT).
  • Lazy: Simply put, don't do work until we need to
  • Cross-platform: There is no reason you should not be able to read and inspect PDB files on a platform other than Windows, other than that the DIA SDK is a COM library.

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Dependencies

~2.5–3.5MB
~73K SLoC