fn build()

in core/src/services/moka/backend.rs [156:181]


    fn build(&mut self) -> Result<Self::Accessor> {
        debug!("backend build started: {:?}", &self);

        let mut builder: CacheBuilder<String, typed_kv::Value, _> =
            SegmentedCache::builder(self.num_segments.unwrap_or(1))
                .thread_pool_enabled(self.thread_pool_enabled.unwrap_or(false));
        // Use entries' bytes as capacity weigher.
        builder = builder.weigher(|k, v| (k.len() + v.size()) as u32);
        if let Some(v) = &self.name {
            builder = builder.name(v);
        }
        if let Some(v) = self.max_capacity {
            builder = builder.max_capacity(v)
        }
        if let Some(v) = self.time_to_live {
            builder = builder.time_to_live(v)
        }
        if let Some(v) = self.time_to_idle {
            builder = builder.time_to_idle(v)
        }

        debug!("backend build finished: {:?}", &self);
        Ok(MokaBackend::new(Adapter {
            inner: builder.build(),
        }))
    }