From 2827668ab5f38c05f95a0060988313c449436267 Mon Sep 17 00:00:00 2001 From: Weicao-CatilGrass <1992414357@qq.com> Date: Mon, 9 Mar 2026 19:41:50 +0800 Subject: Move entry module into binary crate --- src/bin/butck.rs | 54 +++++++++++++++++++++++++++++++++++++++++++++++++----- src/entry.rs | 50 -------------------------------------------------- src/lib.rs | 1 - 3 files changed, 49 insertions(+), 56 deletions(-) delete mode 100644 src/entry.rs diff --git a/src/bin/butck.rs b/src/bin/butck.rs index 1152bc8..996ee68 100644 --- a/src/bin/butck.rs +++ b/src/bin/butck.rs @@ -1,12 +1,9 @@ use std::process::exit; use butchunker::{ - chunker::{ - context::ButckContext, - rw::error::{ButckRWError, ButckRWErrorKind}, - }, - entry::{entry, print_help, print_version}, + ctx::ButckContext, special_argument, special_flag, + storage::{ButckRWError, ButckRWErrorKind, build, write}, utils::log::init_logger, }; use just_progress::{progress, renderer}; @@ -116,3 +113,50 @@ fn handle_entry_result(r: Result<(), ButckRWError>) { }, } } + +pub async fn entry(ctx: ButckContext, args: Vec) -> Result<(), ButckRWError> { + if let Some(subcommand) = args.first() { + return match subcommand.as_str() { + "write" => write(ctx).await, + "build" => build(ctx).await, + "lspolicy" => { + if ctx.stream_read.is_some() { + butck_policies::stream_policies() + .iter() + .for_each(|p| println!("{}", p)); + } else { + butck_policies::policies() + .iter() + .for_each(|p| println!("{}", p)); + } + return Ok(()); + } + "lspolicy-all" => { + let policies = butck_policies::policies(); + let stream_policies = butck_policies::stream_policies(); + let mut all_policies: Vec<_> = + policies.iter().chain(stream_policies.iter()).collect(); + all_policies.sort(); + all_policies.dedup(); + all_policies.iter().for_each(|p| println!("{}", p)); + return Ok(()); + } + _ => { + print_help(); + exit(1) + } + }; + } + Ok(()) +} + +pub fn print_help() { + println!("{}", include_str!("../../resources/helps/butck.txt").trim()); +} + +pub fn print_version() { + println!( + "{}", + include_str!("../../resources/version_info.txt").trim() + ); +} diff --git a/src/entry.rs b/src/entry.rs deleted file mode 100644 index f1d5203..0000000 --- a/src/entry.rs +++ /dev/null @@ -1,50 +0,0 @@ -use std::process::exit; - -use crate::chunker::{ - context::ButckContext, - rw::{self, error::ButckRWError}, -}; - -pub async fn entry(ctx: ButckContext, args: Vec) -> Result<(), ButckRWError> { - if let Some(subcommand) = args.first() { - return match subcommand.as_str() { - "write" => rw::storage::write(ctx).await, - "build" => rw::storage::build(ctx).await, - "lspolicy" => { - if ctx.stream_read.is_some() { - butck_policies::stream_policies() - .iter() - .for_each(|p| println!("{}", p)); - } else { - butck_policies::policies() - .iter() - .for_each(|p| println!("{}", p)); - } - return Ok(()); - } - "lspolicy-all" => { - let policies = butck_policies::policies(); - let stream_policies = butck_policies::stream_policies(); - let mut all_policies: Vec<_> = - policies.iter().chain(stream_policies.iter()).collect(); - all_policies.sort(); - all_policies.dedup(); - all_policies.iter().for_each(|p| println!("{}", p)); - return Ok(()); - } - _ => { - print_help(); - exit(1) - } - }; - } - Ok(()) -} - -pub fn print_help() { - println!("{}", include_str!("../resources/helps/butck.txt").trim()); -} - -pub fn print_version() { - println!("{}", include_str!("../resources/version_info.txt").trim()); -} diff --git a/src/lib.rs b/src/lib.rs index de6f6b4..5c2c190 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,5 +1,4 @@ pub mod chunker; -pub mod entry; pub mod utils; pub mod storage { -- cgit