llogiq / Metacollect
Licence: mpl-2.0
A lint to collect some crate metadata
Stars: ✭ 116
Programming Languages
rust
11053 projects
metacollect
Collecting All Your Crate Metadata
This is a lint that never reports anything, but collects crate metadata like the composition of types and the call graph.
This can be useful to determine if
- a type has inherent mutability
- a type contains some unsafe other type (e.g. UnsafeCell)
- a function may panic
- a function is pure
- a function is recursive
- a function allocates memory
For now, this is only a work-in-progress proof of concept. There are some open questions, like
- How to best store the data (currently this writes to tab-separated files, but the plan is to use Diesel to write to an SQLite database.
- How to deal with generics
- How to deal with trait object methods
- How to run the lint from a build script
License
Mozilla Public License 2.0 (see LICENSE)
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].