#line #file #macro #read-file #add #procedural #include-lines

include-lines-proc

include-lines crate的进程宏。请添加该crate。

2个稳定版本

1.1.0 2023年2月16日
1.0.0 2023年2月16日

#83#read-file

Download history 62/week @ 2024-04-18 44/week @ 2024-04-25 58/week @ 2024-05-02 52/week @ 2024-05-09 46/week @ 2024-05-16 49/week @ 2024-05-23 51/week @ 2024-05-30 38/week @ 2024-06-06 48/week @ 2024-06-13 87/week @ 2024-06-20 76/week @ 2024-06-27 31/week @ 2024-07-04 48/week @ 2024-07-11 70/week @ 2024-07-18 161/week @ 2024-07-25 333/week @ 2024-08-01

620 每月下载量
3 个crate中使用 (通过 include-lines)

MIT/Apache

3KB

include-lines

Rust宏,在编译时读取文件的所有行。这对于加载静态数据非常有用。

示例

示例中,在项目Cargo.toml文件同一目录下有一个名为 file.txt 的文件

these
are
file
lines

读取一个文件并将其存储在一个类型为 [&'static str] 的数组中

use include_lines::include_lines;
let lines = include_lines!("file.txt");

对于示例文件,这会展开为

let lines = [
    "these",
    "are",
    "file",
    "lines",
];

读取一个文件并将其存储在一个类型为 [String] 的数组中

use include_lines::include_lines_s;
let lines = include_lines_s!("file.txt");

对于示例文件,这会展开为

let lines = [
    String::from("these"),
    String::from("are"),
    String::from("file"),
    String::from("lines"),
];

在编译时以类型 usize 获取文件中的行数

use include_lines::count_lines;
let num_lines = count_lines!("file.txt");

对于示例文件,这会展开为

let num_lines = 4usize;

在编译时从文件创建静态数组

您可以使用宏 static_include_lines!static_include_lines_s! 在编译时初始化静态文本数组

use include_lines::{static_include_lines};
static_include_lines!(LINES, "file.txt");

对于示例文件,这会展开为

static LINES: [&str; 4] = [
    "these",
    "are",
    "file",
    "lines",
];

依赖

~1.5MB
~35K SLoC