Expand description
Myd
Pronounced /mi:d/, like mead
Myd is a rust library to create a representation of the
rust module tree as a usable datatype, and to resolve imports. It
is designed to be used by tools working with rust source code to
be less naïve about the module system.
Examples
Parse a package:
// Expensive operation: may take a few seconds
let mi = myd::parse::parse("./Cargo.toml");Work out where something is imported from:
let my_path: syn::Path = syn::parse_str("std::collections::HashMap");
let hashmap = mi.path(my_node, my_path)See the examples for more.
Modules
- Exposes a function to parse a crate into a
ModuleInformation - Information about the platform / target
Structs
- A reference to an item on the tree.
- A rust module
Enums
- Cargo features flags
- A reference either fo a module or an item on the tree
- An error occuring when resolving a path with
ModuleInformation::path
Type Definitions
- A list of
syn::Items