Remove all blocking std::os blocking functions
This commit moves all thread-blocking I/O functions from the std::os module. Their replacements can be found in either std::rt::io::file or in a hidden "old_os" module inside of native::file. I didn't want to outright delete these functions because they have a lot of special casing learned over time for each OS/platform, and I imagine that these will someday get integrated into a blocking implementation of IoFactory. For now, they're moved to a private module to prevent bitrot and still have tests to ensure that they work. I've also expanded the extensions to a few more methods defined on Path, most of which were previously defined in std::os but now have non-thread-blocking implementations as part of using the current IoFactory. The api of io::file is in flux, but I plan on changing it in the next commit as well. Closes #10057
This commit is contained in:
parent
7bf58c2baa
commit
9c1851019f
57 changed files with 1364 additions and 1493 deletions
|
@ -17,6 +17,7 @@ extern mod extra;
|
|||
|
||||
use std::os;
|
||||
use std::rt;
|
||||
use std::rt::io::file;
|
||||
|
||||
use extra::getopts;
|
||||
use extra::getopts::groups::{optopt, optflag, reqopt};
|
||||
|
@ -247,7 +248,7 @@ pub fn make_tests(config: &config) -> ~[test::TestDescAndFn] {
|
|||
debug!("making tests from {}",
|
||||
config.src_base.display());
|
||||
let mut tests = ~[];
|
||||
let dirs = os::list_dir_path(&config.src_base);
|
||||
let dirs = file::readdir(&config.src_base);
|
||||
for file in dirs.iter() {
|
||||
let file = file.clone();
|
||||
debug!("inspecting file {}", file.display());
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue