GnoCiYeH 1 年之前
父节点
当前提交
6f5e043310
共有 2 个文件被更改,包括 0 次插入166 次删除
  1. 0 165
      src/parse/parse_base_unit/mod.rs
  2. 0 1
      src/unit/mod.rs

+ 0 - 165
src/parse/parse_base_unit/mod.rs

@@ -1,165 +0,0 @@
-use crate::{
-    error::ParseError,
-    unit::{target::TargetUnit, BaseUnitAttr, InstallPart, UnitPart},
-};
-//use drstd as std;
-use std::rc::Rc;
-use std::string::String;
-use std::vec::Vec;
-
-use super::{parse_util::UnitParseUtil, InstallUnitAttr};
-
-//Unit同有部分的解析器
-pub struct BaseUnitParser;
-
-impl BaseUnitParser {
-    /// @brief 为Unit解析Unit段属性并添加
-    ///
-    /// 为Unit解析Unit段属性并添加
-    ///
-    /// @param unit_part UnitPart(Unit段结构体),解析结果将存在该结构体
-    /// 
-    /// @param attr BaseUnitAttr,Unit段的属性抽象
-    /// 
-    /// @param val 属性值
-    ///
-    /// @return 成功则返回Ok(()),否则返回Err
-    pub fn parse_and_set_base_unit_attribute(
-        unit_part: &mut UnitPart,
-        attr: &BaseUnitAttr,
-        val: &str,
-    ) -> Result<(), ParseError> {
-        match attr {
-            BaseUnitAttr::None => {
-                return Err(ParseError::ESyntaxError);
-            }
-            BaseUnitAttr::Description => unit_part.description = String::from(val),
-            BaseUnitAttr::Documentation => unit_part
-                .documentation
-                .extend(UnitParseUtil::parse_url(val)?),
-            BaseUnitAttr::Requires => {
-                let units = val.split_whitespace().collect::<Vec<&str>>();
-                //TODO:目前先加入requires列表,可能会出现循环依赖问题,后续应解决循环依赖问题
-                for unit_path in units {
-                    unit_part
-                        .requires
-                        .push(UnitParseUtil::parse_unit_no_type(unit_path)?);
-                }
-            }
-            BaseUnitAttr::Wants => {
-                let units = val.split_whitespace().collect::<Vec<&str>>();
-                //TODO:目前先加入列表,可能会出现循环依赖问题,后续应解决循环依赖问题
-                for unit_path in units {
-                    unit_part
-                        .wants
-                        .push(UnitParseUtil::parse_unit_no_type(unit_path)?);
-                }
-            }
-            BaseUnitAttr::After => {
-                let units = val.split_whitespace().collect::<Vec<&str>>();
-                //TODO:目前先加入列表,可能会出现循环依赖问题,后续应解决循环依赖问题
-                for unit_path in units {
-                    unit_part
-                        .after
-                        .push(UnitParseUtil::parse_unit_no_type(unit_path)?);
-                }
-            }
-            BaseUnitAttr::Before => {
-                let units = val.split_whitespace().collect::<Vec<&str>>();
-                //TODO:目前先加入列表,可能会出现循环依赖问题,后续应解决循环依赖问题
-                for unit_path in units {
-                    unit_part
-                        .before
-                        .push(UnitParseUtil::parse_unit_no_type(unit_path)?);
-                }
-            }
-            BaseUnitAttr::BindsTo => {
-                let units = val.split_whitespace().collect::<Vec<&str>>();
-                //TODO:目前先加入列表,可能会出现循环依赖问题,后续应解决循环依赖问题
-                for unit_path in units {
-                    unit_part
-                        .binds_to
-                        .push(UnitParseUtil::parse_unit_no_type(unit_path)?);
-                }
-            }
-            BaseUnitAttr::PartOf => {
-                let units = val.split_whitespace().collect::<Vec<&str>>();
-                //TODO:目前先加入列表,可能会出现循环依赖问题,后续应解决循环依赖问题
-                for unit_path in units {
-                    unit_part
-                        .part_of
-                        .push(UnitParseUtil::parse_unit_no_type(unit_path)?);
-                }
-            }
-            BaseUnitAttr::OnFailure => {
-                let units = val.split_whitespace().collect::<Vec<&str>>();
-                //TODO:目前先加入列表,可能会出现循环依赖问题,后续应解决循环依赖问题
-                for unit_path in units {
-                    unit_part
-                        .on_failure
-                        .push(UnitParseUtil::parse_unit_no_type(unit_path)?);
-                }
-            }
-            BaseUnitAttr::Conflicts => {
-                let units = val.split_whitespace().collect::<Vec<&str>>();
-                //TODO:目前先加入列表,可能会出现循环依赖问题,后续应解决循环依赖问题
-                for unit_path in units {
-                    let unit = UnitParseUtil::parse_unit_no_type(unit_path)?;
-                    unit_part.conflicts.push(unit);
-                }
-            }
-        }
-        return Ok(());
-    }
-
-    /// @brief 为Unit解析Install段属性并添加
-    ///
-    /// 为Unit解析Install段属性并添加
-    ///
-    /// @param install_part InstallPart(Install段结构体),解析结果将存在该结构体
-    /// 
-    /// @param attr BaseUnitAttr,Unit段的属性抽象
-    /// 
-    /// @param val 属性值
-    ///
-    /// @return 成功则返回Ok(()),否则返回Err
-    pub fn parse_and_set_base_install_attribute(
-        install_part: &mut InstallPart,
-        attr: &InstallUnitAttr,
-        val: &str,
-    ) -> Result<(), ParseError> {
-        match attr {
-            InstallUnitAttr::RequiredBy => {
-                let units = val.split_whitespace().collect::<Vec<&str>>();
-                //TODO:目前先加入列表,可能会出现循环依赖问题,后续应解决循环依赖问题
-                for unit_path in units {
-                    let unit = UnitParseUtil::parse_unit::<TargetUnit>(unit_path)?;
-                    install_part.requires_by.push(unit);
-                }
-            }
-            InstallUnitAttr::Also => {
-                let units = val.split_whitespace().collect::<Vec<&str>>();
-                //TODO:目前先加入列表,可能会出现循环依赖问题,后续应解决循环依赖问题
-                for unit_path in units {
-                    let unit = UnitParseUtil::parse_unit_no_type(unit_path)?;
-                    install_part.also.push(unit);
-                }
-            }
-            InstallUnitAttr::WantedBy => {
-                let units = val.split_whitespace().collect::<Vec<&str>>();
-                //TODO:目前先加入列表,可能会出现循环依赖问题,后续应解决循环依赖问题
-                for unit_path in units {
-                    let unit = UnitParseUtil::parse_unit::<TargetUnit>(unit_path)?;
-                    install_part.wanted_by.push(unit);
-                }
-            }
-            InstallUnitAttr::Alias => {
-                install_part.alias = String::from(val);
-            }
-            InstallUnitAttr::None => {
-                return Err(ParseError::EINVAL);
-            }
-        }
-        return Ok(());
-    }
-}

+ 0 - 1
src/unit/mod.rs

@@ -136,7 +136,6 @@ impl BaseUnit {
     pub fn parse_and_set_attribute(&self) -> Result<(), ParseError> {
         return Ok(());
     }
-}
 
     pub fn unit_part(&self) -> &UnitPart {
         &self.unit_part