Skip to content

Feudalman/arui-core

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ARUI-CORE

一个简单的库,用于分析指定目录下的文件树。

该项目由个人不定期维护,且可以预期地将长期处于开发中。

目标 Features

  • 生成指定目录下的文件树结构
  • 遍历文件树生成各节点的总结信息
  • 自定义错误类型
  • 提供配置字段,用于控制文件树生成的行为
  • 提供更多总结信息的获取
  • 增加/优化项目树可视化 API

用法

该项目作为 lib,以依赖形式导入您的项目,通过几个关键数据结构提供主要功能。

Build and Summarize

这里多步构建完整项目树,通过 newbuildsummarize 可以选择合适节点完成对应操作:

  • new:实例化项目树对象
  • build:通过初始化 path 启动遍历,获取项目树结构
  • summarize:通过构建后的项目树自底向上分析各个节点的总结信息

注意!build/summarize操作为原地操作,即直接修改项目树实例,若分步则需提前声明可变变量。

use arui_core::ProjectTree;

let name = "test";
let path = "./tests/examples";
// init with name/path/config
let mut tree = ProjectTree::new(name, path, None);
// build to get project file tree
tree.build().expect("build failed");
// summarize to get summaries of tree nodes
tree.summarize().expect("summarize failed");

Plant

直接“种植”一棵项目树,即不分步,直接完成所有操作。 若仅种植一次,后续不再更新项目树信息,则可不声明为可变变量。

use arui_core::ProjectTree;

let name = "test";
let path = "./tests";
let tree = ProjectTree::plant(name, path, None);

Show

将项目树基础信息输出到终端。

use arui_core::ProjectTree;

let tree = ProjectTree::plant("test", "./tests", None);

tree.show()

Print_tree

遍历项目树,按照构建结果逐条输出节点基础信息到终端。

use arui_core::ProjectTree;

let tree = ProjectTree::plant("test", "./tests", None);

tree.print_tree()

About

一个简单的库,用于分析指定目录下的文件树。

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages