All Projects → llogiq → Metacollect

llogiq / Metacollect

Licence: mpl-2.0
A lint to collect some crate metadata

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].