diff --git a/Xargo.toml b/Xargo.toml index bc268c00c4..ea3144eb6a 100644 --- a/Xargo.toml +++ b/Xargo.toml @@ -1,3 +1 @@ [dependencies.alloc] - -[dependencies.collections] diff --git a/build.rs b/build.rs index 5ee305875d..4efa33e30f 100644 --- a/build.rs +++ b/build.rs @@ -97,7 +97,7 @@ fn main() { // Write header f.write_all(b" mod gen { - use collections::BTreeMap; + use alloc::BTreeMap; pub fn gen() -> BTreeMap<&'static [u8], (&'static [u8], bool)> { let mut files: BTreeMap<&'static [u8], (&'static [u8], bool)> = BTreeMap::new(); ").unwrap(); diff --git a/src/acpi/aml/dataobj.rs b/src/acpi/aml/dataobj.rs index a96f0215c4..10ffaf18a3 100644 --- a/src/acpi/aml/dataobj.rs +++ b/src/acpi/aml/dataobj.rs @@ -1,5 +1,5 @@ -use collections::vec::Vec; -use collections::string::String; +use alloc::vec::Vec; +use alloc::string::String; use super::AmlError; use super::parser::{ AmlParseType, ParseResult, AmlExecutionContext, ExecutionState }; diff --git a/src/acpi/aml/mod.rs b/src/acpi/aml/mod.rs index 250f29f6aa..332e5fbb75 100644 --- a/src/acpi/aml/mod.rs +++ b/src/acpi/aml/mod.rs @@ -1,8 +1,8 @@ //! # AML //! Code to parse and execute AML tables -use collections::string::String; -use collections::vec::Vec; +use alloc::string::String; +use alloc::vec::Vec; use core::str::FromStr; use super::sdt::Sdt; diff --git a/src/acpi/aml/namedobj.rs b/src/acpi/aml/namedobj.rs index c2897fdaf2..49ae26ca7f 100644 --- a/src/acpi/aml/namedobj.rs +++ b/src/acpi/aml/namedobj.rs @@ -1,6 +1,6 @@ use alloc::boxed::Box; -use collections::string::String; -use collections::btree_map::BTreeMap; +use alloc::string::String; +use alloc::btree_map::BTreeMap; use super::AmlError; use super::parser::{ AmlParseType, ParseResult, AmlParseTypeGeneric, AmlExecutionContext, ExecutionState }; diff --git a/src/acpi/aml/namespace.rs b/src/acpi/aml/namespace.rs index 0ebc855bd8..906d3f63d8 100644 --- a/src/acpi/aml/namespace.rs +++ b/src/acpi/aml/namespace.rs @@ -1,8 +1,8 @@ use alloc::boxed::Box; -use collections::string::String; -use collections::string::ToString; -use collections::vec::Vec; -use collections::btree_map::BTreeMap; +use alloc::string::String; +use alloc::string::ToString; +use alloc::vec::Vec; +use alloc::btree_map::BTreeMap; use core::fmt::{Debug, Formatter, Error}; use core::str::FromStr; diff --git a/src/acpi/aml/namestring.rs b/src/acpi/aml/namestring.rs index 81fee85316..a8156f40a0 100644 --- a/src/acpi/aml/namestring.rs +++ b/src/acpi/aml/namestring.rs @@ -1,5 +1,5 @@ -use collections::vec::Vec; -use collections::string::String; +use alloc::vec::Vec; +use alloc::string::String; use super::AmlError; use super::parser::{AmlParseType, ParseResult, AmlExecutionContext, ExecutionState}; diff --git a/src/acpi/aml/parser.rs b/src/acpi/aml/parser.rs index 0f26321112..12ab3ae2dc 100644 --- a/src/acpi/aml/parser.rs +++ b/src/acpi/aml/parser.rs @@ -1,6 +1,6 @@ -use collections::string::String; -use collections::btree_map::BTreeMap; -use collections::vec::Vec; +use alloc::string::String; +use alloc::btree_map::BTreeMap; +use alloc::vec::Vec; use alloc::boxed::Box; use spin::RwLockWriteGuard; diff --git a/src/acpi/aml/termlist.rs b/src/acpi/aml/termlist.rs index 75967a07df..b67430ee69 100644 --- a/src/acpi/aml/termlist.rs +++ b/src/acpi/aml/termlist.rs @@ -1,4 +1,4 @@ -use collections::vec::Vec; +use alloc::vec::Vec; use super::AmlError; use super::parser::{ AmlParseType, ParseResult, AmlExecutionContext, ExecutionState }; diff --git a/src/acpi/aml/type2opcode.rs b/src/acpi/aml/type2opcode.rs index 19e359c7a4..50d9324d4e 100644 --- a/src/acpi/aml/type2opcode.rs +++ b/src/acpi/aml/type2opcode.rs @@ -1,6 +1,6 @@ use alloc::boxed::Box; -use collections::string::String; -use collections::vec::Vec; +use alloc::string::String; +use alloc::vec::Vec; use super::{AmlError, parse_aml_with_scope}; use super::parser::{AmlParseType, ParseResult, AmlExecutionContext, ExecutionState}; diff --git a/src/acpi/mod.rs b/src/acpi/mod.rs index c5dd0d59b4..8939938d1d 100644 --- a/src/acpi/mod.rs +++ b/src/acpi/mod.rs @@ -1,9 +1,9 @@ //! # ACPI //! Code to parse the ACPI tables -use collections::btree_map::BTreeMap; -use collections::string::String; -use collections::vec::Vec; +use alloc::btree_map::BTreeMap; +use alloc::string::String; +use alloc::vec::Vec; use alloc::boxed::Box; use syscall::io::{Io, Pio}; diff --git a/src/context/context.rs b/src/context/context.rs index 6702be37a1..b6b8d0e48a 100644 --- a/src/context/context.rs +++ b/src/context/context.rs @@ -1,6 +1,6 @@ use alloc::arc::Arc; use alloc::boxed::Box; -use collections::{BTreeMap, Vec, VecDeque}; +use alloc::{BTreeMap, Vec, VecDeque}; use core::mem; use spin::Mutex; diff --git a/src/context/event.rs b/src/context/event.rs index c6c9431be2..fd582f2094 100644 --- a/src/context/event.rs +++ b/src/context/event.rs @@ -1,5 +1,5 @@ use alloc::arc::{Arc, Weak}; -use collections::BTreeMap; +use alloc::BTreeMap; use spin::{Once, RwLock, RwLockReadGuard, RwLockWriteGuard}; use context; diff --git a/src/context/list.rs b/src/context/list.rs index aad872e3cd..71e688d1a8 100644 --- a/src/context/list.rs +++ b/src/context/list.rs @@ -2,7 +2,7 @@ use alloc::allocator::{Alloc, Layout}; use alloc::arc::Arc; use alloc::boxed::Box; use alloc::heap::Heap; -use collections::BTreeMap; +use alloc::BTreeMap; use core::mem; use core::sync::atomic::Ordering; use paging; @@ -36,7 +36,7 @@ impl ContextList { self.map.get(&super::CONTEXT_ID.load(Ordering::SeqCst)) } - pub fn iter(&self) -> ::collections::btree_map::Iter>> { + pub fn iter(&self) -> ::alloc::btree_map::Iter>> { self.map.iter() } diff --git a/src/context/memory.rs b/src/context/memory.rs index ebf60d5336..f9fe8c0029 100644 --- a/src/context/memory.rs +++ b/src/context/memory.rs @@ -1,5 +1,5 @@ use alloc::arc::{Arc, Weak}; -use collections::VecDeque; +use alloc::VecDeque; use core::intrinsics; use spin::Mutex; diff --git a/src/context/timeout.rs b/src/context/timeout.rs index 9d9942ae98..3e5c886e50 100644 --- a/src/context/timeout.rs +++ b/src/context/timeout.rs @@ -1,4 +1,4 @@ -use collections::vec_deque::VecDeque; +use alloc::vec_deque::VecDeque; use core::mem; use spin::{Once, Mutex, MutexGuard}; diff --git a/src/elf.rs b/src/elf.rs index ac5cb774b3..a44a955232 100644 --- a/src/elf.rs +++ b/src/elf.rs @@ -1,6 +1,6 @@ //! ELF executables -use collections::String; +use alloc::String; use goblin::elf::section_header::SHT_SYMTAB; diff --git a/src/lib.rs b/src/lib.rs index c30602b78b..6a509ef8fa 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -27,9 +27,8 @@ extern crate alloc_kernel as allocator; pub extern crate x86; -extern crate alloc; #[macro_use] -extern crate collections; +extern crate alloc; #[macro_use] extern crate bitflags; diff --git a/src/memory/recycle.rs b/src/memory/recycle.rs index aa62350a23..5b7c159003 100644 --- a/src/memory/recycle.rs +++ b/src/memory/recycle.rs @@ -1,7 +1,7 @@ //! Recycle allocator //! Uses freed frames if possible, then uses inner allocator -use collections::Vec; +use alloc::Vec; use paging::PhysicalAddress; diff --git a/src/scheme/env.rs b/src/scheme/env.rs index b846c44514..3c359dd24a 100644 --- a/src/scheme/env.rs +++ b/src/scheme/env.rs @@ -1,5 +1,5 @@ use alloc::arc::Arc; -use collections::{BTreeMap, Vec}; +use alloc::{BTreeMap, Vec}; use core::{cmp, str}; use core::sync::atomic::{AtomicUsize, Ordering}; use spin::{Mutex, RwLock}; diff --git a/src/scheme/event.rs b/src/scheme/event.rs index 210b5ddd99..80915e2130 100644 --- a/src/scheme/event.rs +++ b/src/scheme/event.rs @@ -1,5 +1,5 @@ use alloc::arc::{Arc, Weak}; -use collections::BTreeMap; +use alloc::BTreeMap; use core::{mem, slice}; use core::sync::atomic::{AtomicUsize, Ordering}; use spin::RwLock; diff --git a/src/scheme/initfs.rs b/src/scheme/initfs.rs index cfae5de47c..a283f382ab 100644 --- a/src/scheme/initfs.rs +++ b/src/scheme/initfs.rs @@ -1,4 +1,4 @@ -use collections::BTreeMap; +use alloc::BTreeMap; use core::{cmp, str}; use core::sync::atomic::{AtomicUsize, Ordering}; use spin::RwLock; @@ -10,7 +10,7 @@ use syscall::scheme::Scheme; #[cfg(test)] mod gen { - use collections::BTreeMap; + use alloc::BTreeMap; pub fn gen() -> BTreeMap<&'static [u8], (&'static [u8], bool)> { BTreeMap::new() } } diff --git a/src/scheme/live.rs b/src/scheme/live.rs index 4ea1eef3bc..95afdad83a 100644 --- a/src/scheme/live.rs +++ b/src/scheme/live.rs @@ -1,7 +1,7 @@ /// Disk scheme replacement when making live disk use alloc::arc::Arc; -use collections::BTreeMap; +use alloc::BTreeMap; use core::{cmp, slice}; use core::sync::atomic::{AtomicUsize, Ordering}; use spin::RwLock; diff --git a/src/scheme/mod.rs b/src/scheme/mod.rs index 74f0e4921d..6ca1f20468 100644 --- a/src/scheme/mod.rs +++ b/src/scheme/mod.rs @@ -8,7 +8,7 @@ use alloc::arc::Arc; use alloc::boxed::Box; -use collections::BTreeMap; +use alloc::BTreeMap; use core::sync::atomic::AtomicUsize; use spin::{Once, RwLock, RwLockReadGuard, RwLockWriteGuard}; @@ -174,11 +174,11 @@ impl SchemeList { Ok(to) } - pub fn iter(&self) -> ::collections::btree_map::Iter>> { + pub fn iter(&self) -> ::alloc::btree_map::Iter>> { self.map.iter() } - pub fn iter_name(&self, ns: SchemeNamespace) -> ::collections::btree_map::Iter, SchemeId> { + pub fn iter_name(&self, ns: SchemeNamespace) -> ::alloc::btree_map::Iter, SchemeId> { self.names[&ns].iter() } diff --git a/src/scheme/pipe.rs b/src/scheme/pipe.rs index d39de348a9..cf677601a0 100644 --- a/src/scheme/pipe.rs +++ b/src/scheme/pipe.rs @@ -1,5 +1,5 @@ use alloc::arc::{Arc, Weak}; -use collections::{BTreeMap, VecDeque}; +use alloc::{BTreeMap, VecDeque}; use core::sync::atomic::{AtomicUsize, ATOMIC_USIZE_INIT, Ordering}; use spin::{Mutex, Once, RwLock, RwLockReadGuard, RwLockWriteGuard}; diff --git a/src/scheme/root.rs b/src/scheme/root.rs index 071b1f3126..f98af13cd6 100644 --- a/src/scheme/root.rs +++ b/src/scheme/root.rs @@ -1,6 +1,6 @@ use alloc::arc::Arc; use alloc::boxed::Box; -use collections::{BTreeMap, Vec}; +use alloc::{BTreeMap, Vec}; use core::str; use core::sync::atomic::{AtomicUsize, Ordering}; use spin::{Mutex, RwLock}; diff --git a/src/scheme/sys/context.rs b/src/scheme/sys/context.rs index 57129778da..9e87752729 100644 --- a/src/scheme/sys/context.rs +++ b/src/scheme/sys/context.rs @@ -1,4 +1,4 @@ -use collections::{String, Vec}; +use alloc::{String, Vec}; use core::str; use context; diff --git a/src/scheme/sys/cpu.rs b/src/scheme/sys/cpu.rs index d61205a73b..7201408b75 100644 --- a/src/scheme/sys/cpu.rs +++ b/src/scheme/sys/cpu.rs @@ -1,4 +1,4 @@ -use collections::Vec; +use alloc::Vec; use device::cpu::cpu_info; use syscall::error::{Error, EIO, Result}; diff --git a/src/scheme/sys/exe.rs b/src/scheme/sys/exe.rs index 84eb266f3c..0fa7a82d8c 100644 --- a/src/scheme/sys/exe.rs +++ b/src/scheme/sys/exe.rs @@ -1,4 +1,4 @@ -use collections::Vec; +use alloc::Vec; use context; use syscall::error::{Error, ESRCH, Result}; diff --git a/src/scheme/sys/iostat.rs b/src/scheme/sys/iostat.rs index b0b49adaa4..92bf3b13dc 100644 --- a/src/scheme/sys/iostat.rs +++ b/src/scheme/sys/iostat.rs @@ -1,4 +1,4 @@ -use collections::{String, Vec}; +use alloc::{String, Vec}; use core::fmt::Write; use core::str; diff --git a/src/scheme/sys/mod.rs b/src/scheme/sys/mod.rs index e85202d9cc..91380f1494 100644 --- a/src/scheme/sys/mod.rs +++ b/src/scheme/sys/mod.rs @@ -1,5 +1,5 @@ use alloc::boxed::Box; -use collections::{BTreeMap, Vec}; +use alloc::{BTreeMap, Vec}; use core::{cmp, str}; use core::sync::atomic::{AtomicUsize, Ordering}; use spin::RwLock; diff --git a/src/scheme/sys/scheme.rs b/src/scheme/sys/scheme.rs index 92f68833fd..226327eaa3 100644 --- a/src/scheme/sys/scheme.rs +++ b/src/scheme/sys/scheme.rs @@ -1,4 +1,4 @@ -use collections::Vec; +use alloc::Vec; use context; use scheme; diff --git a/src/scheme/sys/scheme_num.rs b/src/scheme/sys/scheme_num.rs index e3ae184b7c..f2a3a2186f 100644 --- a/src/scheme/sys/scheme_num.rs +++ b/src/scheme/sys/scheme_num.rs @@ -1,4 +1,4 @@ -use collections::Vec; +use alloc::Vec; use context; use scheme; diff --git a/src/scheme/sys/syscall.rs b/src/scheme/sys/syscall.rs index 1556e395cd..06cb973821 100644 --- a/src/scheme/sys/syscall.rs +++ b/src/scheme/sys/syscall.rs @@ -1,4 +1,4 @@ -use collections::{String, Vec}; +use alloc::{String, Vec}; use core::fmt::Write; use core::str; diff --git a/src/scheme/sys/uname.rs b/src/scheme/sys/uname.rs index 29daef8c46..7160671ed7 100644 --- a/src/scheme/sys/uname.rs +++ b/src/scheme/sys/uname.rs @@ -1,4 +1,4 @@ -use collections::Vec; +use alloc::Vec; use syscall::error::Result; pub fn resource() -> Result> { diff --git a/src/scheme/time.rs b/src/scheme/time.rs index 7953cd9ef4..2e9c09a55c 100644 --- a/src/scheme/time.rs +++ b/src/scheme/time.rs @@ -1,4 +1,4 @@ -use collections::BTreeMap; +use alloc::BTreeMap; use core::{mem, slice, str}; use core::sync::atomic::{AtomicUsize, Ordering}; use spin::RwLock; diff --git a/src/scheme/user.rs b/src/scheme/user.rs index 1a389afe8c..ed2b06ca60 100644 --- a/src/scheme/user.rs +++ b/src/scheme/user.rs @@ -1,6 +1,6 @@ use alloc::arc::{Arc, Weak}; use alloc::boxed::Box; -use collections::BTreeMap; +use alloc::BTreeMap; use core::sync::atomic::{AtomicU64, Ordering}; use core::{mem, slice, usize}; use spin::{Mutex, RwLock}; diff --git a/src/sync/wait_condition.rs b/src/sync/wait_condition.rs index 46db303f94..8c9a6a7c0b 100644 --- a/src/sync/wait_condition.rs +++ b/src/sync/wait_condition.rs @@ -1,5 +1,5 @@ use alloc::arc::Arc; -use collections::Vec; +use alloc::Vec; use spin::{Mutex, RwLock}; use context::{self, Context, SwitchResult}; diff --git a/src/sync/wait_map.rs b/src/sync/wait_map.rs index 1812077ffa..2705969b66 100644 --- a/src/sync/wait_map.rs +++ b/src/sync/wait_map.rs @@ -1,4 +1,4 @@ -use collections::BTreeMap; +use alloc::BTreeMap; use core::mem; use spin::Mutex; diff --git a/src/sync/wait_queue.rs b/src/sync/wait_queue.rs index d36bc30dba..a3c5ded85e 100644 --- a/src/sync/wait_queue.rs +++ b/src/sync/wait_queue.rs @@ -1,4 +1,4 @@ -use collections::vec_deque::VecDeque; +use alloc::vec_deque::VecDeque; use spin::Mutex; use sync::WaitCondition; diff --git a/src/syscall/debug.rs b/src/syscall/debug.rs index 6787ae2222..dfe0cdaba1 100644 --- a/src/syscall/debug.rs +++ b/src/syscall/debug.rs @@ -1,6 +1,6 @@ use core::mem; use core::ops::Range; -use collections::{String, Vec}; +use alloc::{String, Vec}; use super::data::{Stat, TimeSpec}; use super::error::Result; diff --git a/src/syscall/futex.rs b/src/syscall/futex.rs index 4b9c30c1a1..7a2500b7f9 100644 --- a/src/syscall/futex.rs +++ b/src/syscall/futex.rs @@ -1,5 +1,5 @@ use alloc::arc::Arc; -use collections::VecDeque; +use alloc::VecDeque; use core::intrinsics; use spin::{Once, RwLock, RwLockReadGuard, RwLockWriteGuard}; diff --git a/src/syscall/privilege.rs b/src/syscall/privilege.rs index c5d6f6e7e6..5a47cc3de5 100644 --- a/src/syscall/privilege.rs +++ b/src/syscall/privilege.rs @@ -1,4 +1,4 @@ -use collections::Vec; +use alloc::Vec; use context; use scheme::{self, SchemeNamespace}; diff --git a/src/syscall/process.rs b/src/syscall/process.rs index 2add5cdd8e..98e30344e8 100644 --- a/src/syscall/process.rs +++ b/src/syscall/process.rs @@ -2,7 +2,7 @@ use alloc::allocator::{Alloc, Layout}; use alloc::arc::Arc; use alloc::boxed::Box; use alloc::heap::Heap; -use collections::{BTreeMap, Vec}; +use alloc::{BTreeMap, Vec}; use core::{intrinsics, mem, str}; use core::ops::DerefMut; use spin::Mutex;