ember_os 0.1.3

A simple OS kernel implemented in rust, which has referenced https://os.phil-opp.com/
Documentation
#![allow(unused_imports)]

pub mod prelude;

pub use crate::utils::collections::{linked_list, lru_cache, trie, vec};

#[cfg(test)]
mod test_collection_alias {
  use super::*;

  #[test_case]
  fn build_vec() {
    let a = vec::Vec::from_iter(0..3);
    assert_eq!(a[..], [0, 1, 2])
  }

  #[test_case]
  fn build_linked_list() {
    let a = linked_list::LinkedList::from_iter(0..3);
    assert_eq!(a.iter().cloned().collect::<vec::Vec<_>>()[..], [0, 1, 2])
  }

  #[test_case]
  fn lru_cache() {
    let mut a = lru_cache::LruCache::new(3);
    assert_eq!(a.capacity(), 3);
    for (k, v) in ['a', 'b', 'c'].into_iter().enumerate() {
      a.put(k, v);
    }
  }

  #[test_case]
  fn trie() {
    let mut trie = trie::Trie::new();
    trie.insert("apple".chars());
    assert!(trie.search("apple".chars()));
    assert!(!trie.search("app".chars()));
    assert!(trie.starts_with("apple".chars()));
    assert!(trie.starts_with("app".chars()));
  }
}