ruwebframe 0.1.5

a simple webframe for rust actix-web, based on rudi and rbatis.
Documentation
use crate::rubase::BaseEntitySingle;
use crate::ruweb::webdto::web_route::WebRoute;
use std::sync::Arc;

#[derive(Default, Clone, Debug)]
pub struct WebRouteList {
    items: Arc<Vec<WebRoute>>,
}

impl BaseEntitySingle for WebRouteList {}
impl WebRouteList {
    pub fn new() -> Self {
        Self {
            items: Arc::new(Vec::<WebRoute>::new()),
        }
    }

    pub fn add_item(&mut self, item: WebRoute) {
        let mut data_mut = Arc::make_mut(&mut self.items); // 这会克隆数据如果引用计数>1
        data_mut .push(item);
    }

    pub fn find_item(&self, name: &str) -> &WebRoute {
        for item in self.items.iter() {
            if item.name.as_str() == name {
                return item;
            }
        }
        &self.items[0]
    }

    pub fn list_items(&self) {
        self.items.iter().for_each(|item| {
            println!("{:#?}", item);
        })
    }
}