Legolas
](https://crates.io/crates/legolas)

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
- Apache License, Version 2.0 (
LICENSE-APACHE
or
http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (
LICENSE-MIT
or
http://opensource.org/licenses/MIT)
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.