heapless 开源项目使用文档
heaplessHeapless, `static` friendly data structures项目地址:https://gitcode.com/gh_mirrors/he/heapless
1. 项目的目录结构及介绍
heapless
是一个 Rust 库,旨在为嵌入式系统提供无堆内存的数据结构。以下是该项目的目录结构及其介绍:
heapless/
├── Cargo.toml
├── LICENSE-APACHE
├── LICENSE-MIT
├── README.md
├── src/
│ ├── binary_heap.rs
│ ├── indexmap.rs
│ ├── string.rs
│ ├── vec.rs
│ └── lib.rs
└── tests/
└── doctests.rs
Cargo.toml
: 项目的配置文件,定义了项目的依赖、版本等信息。LICENSE-APACHE
和LICENSE-MIT
: 项目的许可证文件。README.md
: 项目的说明文档,包含项目的基本信息和使用方法。src/
: 源代码目录。binary_heap.rs
: 实现了一个固定大小的二叉堆。indexmap.rs
: 实现了一个固定大小的键值对集合。string.rs
: 实现了一个固定大小的字符串。vec.rs
: 实现了一个固定大小的动态数组。lib.rs
: 库的入口文件,定义了模块和导出。
tests/
: 测试代码目录。doctests.rs
: 包含文档测试的代码。
2. 项目的启动文件介绍
heapless
库的启动文件是 src/lib.rs
。该文件是库的入口点,定义了模块和导出。以下是 src/lib.rs
的部分内容:
pub mod binary_heap;
pub mod indexmap;
pub mod string;
pub mod vec;
// 导出常用类型
pub use binary_heap::BinaryHeap;
pub use indexmap::{Entry, IndexMap};
pub use string::String;
pub use vec::Vec;
在 src/lib.rs
中,定义了各个模块,并导出了常用的类型,使得用户可以直接使用这些类型而无需指定模块路径。
3. 项目的配置文件介绍
heapless
项目的配置文件是 Cargo.toml
。该文件定义了项目的元数据、依赖关系和其他配置。以下是 Cargo.toml
的部分内容:
[package]
name = "heapless"
version = "0.7.10"
authors = ["Jorge Aparicio <jorge@japaric.io>"]
edition = "2018"
license = "MIT OR Apache-2.0"
description = "Static friendly data structures that don't require dynamic memory allocation"
repository = "https://github.com/rust-embedded/heapless"
documentation = "https://docs.rs/heapless"
readme = "README.md"
keywords = ["embedded", "no-std", "heap", "static"]
categories = ["no-std"]
[dependencies]
[dev-dependencies]
[features]
default = []
[package]
: 定义了项目的名称、版本、作者、许可证等信息。[dependencies]
: 定义了项目的外部依赖。[dev-dependencies]
: 定义了开发时使用的外部依赖。[features]
: 定义了项目的特性,允许用户启用或禁用某些功能。
通过 Cargo.toml
文件,用户可以了解项目的版本信息、依赖关系以及如何启用特定功能。
heaplessHeapless, `static` friendly data structures项目地址:https://gitcode.com/gh_mirrors/he/heapless