@@ -124,7 +124,7 @@ impl File {
124124 /// This function will return an error if `path` does not already exist.
125125 /// Other errors may also be returned according to `OpenOptions::open`.
126126 #[ stable( feature = "rust1" , since = "1.0.0" ) ]
127- pub fn open < P : AsPath + ? Sized > ( path : & P ) -> io:: Result < File > {
127+ pub fn open < P : AsPath > ( path : P ) -> io:: Result < File > {
128128 OpenOptions :: new ( ) . read ( true ) . open ( path)
129129 }
130130
@@ -135,7 +135,7 @@ impl File {
135135 ///
136136 /// See the `OpenOptions::open` function for more details.
137137 #[ stable( feature = "rust1" , since = "1.0.0" ) ]
138- pub fn create < P : AsPath + ? Sized > ( path : & P ) -> io:: Result < File > {
138+ pub fn create < P : AsPath > ( path : P ) -> io:: Result < File > {
139139 OpenOptions :: new ( ) . write ( true ) . create ( true ) . truncate ( true ) . open ( path)
140140 }
141141
@@ -297,7 +297,7 @@ impl OpenOptions {
297297 /// permissions for
298298 /// * Filesystem-level errors (full disk, etc)
299299 #[ stable( feature = "rust1" , since = "1.0.0" ) ]
300- pub fn open < P : AsPath + ? Sized > ( & self , path : & P ) -> io:: Result < File > {
300+ pub fn open < P : AsPath > ( & self , path : P ) -> io:: Result < File > {
301301 let path = path. as_path ( ) ;
302302 let inner = try!( fs_imp:: File :: open ( path, & self . 0 ) ) ;
303303 Ok ( File { path : path. to_path_buf ( ) , inner : inner } )
@@ -410,7 +410,7 @@ impl DirEntry {
410410/// user lacks permissions to remove the file, or if some other filesystem-level
411411/// error occurs.
412412#[ stable( feature = "rust1" , since = "1.0.0" ) ]
413- pub fn remove_file < P : AsPath + ? Sized > ( path : & P ) -> io:: Result < ( ) > {
413+ pub fn remove_file < P : AsPath > ( path : P ) -> io:: Result < ( ) > {
414414 fs_imp:: unlink ( path. as_path ( ) )
415415}
416416
@@ -438,7 +438,7 @@ pub fn remove_file<P: AsPath + ?Sized>(path: &P) -> io::Result<()> {
438438/// permissions to perform a `metadata` call on the given `path` or if there
439439/// is no entry in the filesystem at the provided path.
440440#[ stable( feature = "rust1" , since = "1.0.0" ) ]
441- pub fn metadata < P : AsPath + ? Sized > ( path : & P ) -> io:: Result < Metadata > {
441+ pub fn metadata < P : AsPath > ( path : P ) -> io:: Result < Metadata > {
442442 fs_imp:: stat ( path. as_path ( ) ) . map ( Metadata )
443443}
444444
@@ -459,8 +459,7 @@ pub fn metadata<P: AsPath + ?Sized>(path: &P) -> io::Result<Metadata> {
459459/// reside on separate filesystems, or if some other intermittent I/O error
460460/// occurs.
461461#[ stable( feature = "rust1" , since = "1.0.0" ) ]
462- pub fn rename < P : AsPath + ?Sized , Q : AsPath + ?Sized > ( from : & P , to : & Q )
463- -> io:: Result < ( ) > {
462+ pub fn rename < P : AsPath , Q : AsPath > ( from : P , to : Q ) -> io:: Result < ( ) > {
464463 fs_imp:: rename ( from. as_path ( ) , to. as_path ( ) )
465464}
466465
@@ -490,9 +489,9 @@ pub fn rename<P: AsPath + ?Sized, Q: AsPath + ?Sized>(from: &P, to: &Q)
490489/// * The current process does not have the permission rights to access
491490/// `from` or write `to`
492491#[ stable( feature = "rust1" , since = "1.0.0" ) ]
493- pub fn copy < P : AsPath + ?Sized , Q : AsPath + ?Sized > ( from : & P , to : & Q )
494- -> io:: Result < u64 > {
492+ pub fn copy < P : AsPath , Q : AsPath > ( from : P , to : Q ) -> io:: Result < u64 > {
495493 let from = from. as_path ( ) ;
494+ let to = to. as_path ( ) ;
496495 if !from. is_file ( ) {
497496 return Err ( Error :: new ( ErrorKind :: MismatchedFileTypeForOperation ,
498497 "the source path is not an existing file" ,
@@ -513,17 +512,15 @@ pub fn copy<P: AsPath + ?Sized, Q: AsPath + ?Sized>(from: &P, to: &Q)
513512/// The `dst` path will be a link pointing to the `src` path. Note that systems
514513/// often require these two paths to both be located on the same filesystem.
515514#[ stable( feature = "rust1" , since = "1.0.0" ) ]
516- pub fn hard_link < P : AsPath + ?Sized , Q : AsPath + ?Sized > ( src : & P , dst : & Q )
517- -> io:: Result < ( ) > {
515+ pub fn hard_link < P : AsPath , Q : AsPath > ( src : P , dst : Q ) -> io:: Result < ( ) > {
518516 fs_imp:: link ( src. as_path ( ) , dst. as_path ( ) )
519517}
520518
521519/// Creates a new soft link on the filesystem.
522520///
523521/// The `dst` path will be a soft link pointing to the `src` path.
524522#[ stable( feature = "rust1" , since = "1.0.0" ) ]
525- pub fn soft_link < P : AsPath + ?Sized , Q : AsPath + ?Sized > ( src : & P , dst : & Q )
526- -> io:: Result < ( ) > {
523+ pub fn soft_link < P : AsPath , Q : AsPath > ( src : P , dst : Q ) -> io:: Result < ( ) > {
527524 fs_imp:: symlink ( src. as_path ( ) , dst. as_path ( ) )
528525}
529526
@@ -535,7 +532,7 @@ pub fn soft_link<P: AsPath + ?Sized, Q: AsPath + ?Sized>(src: &P, dst: &Q)
535532/// reading a file that does not exist or reading a file that is not a soft
536533/// link.
537534#[ stable( feature = "rust1" , since = "1.0.0" ) ]
538- pub fn read_link < P : AsPath + ? Sized > ( path : & P ) -> io:: Result < PathBuf > {
535+ pub fn read_link < P : AsPath > ( path : P ) -> io:: Result < PathBuf > {
539536 fs_imp:: readlink ( path. as_path ( ) )
540537}
541538
@@ -554,7 +551,7 @@ pub fn read_link<P: AsPath + ?Sized>(path: &P) -> io::Result<PathBuf> {
554551/// This function will return an error if the user lacks permissions to make a
555552/// new directory at the provided `path`, or if the directory already exists.
556553#[ stable( feature = "rust1" , since = "1.0.0" ) ]
557- pub fn create_dir < P : AsPath + ? Sized > ( path : & P ) -> io:: Result < ( ) > {
554+ pub fn create_dir < P : AsPath > ( path : P ) -> io:: Result < ( ) > {
558555 fs_imp:: mkdir ( path. as_path ( ) )
559556}
560557
@@ -568,7 +565,7 @@ pub fn create_dir<P: AsPath + ?Sized>(path: &P) -> io::Result<()> {
568565/// error conditions for when a directory is being created (after it is
569566/// determined to not exist) are outlined by `fs::create_dir`.
570567#[ stable( feature = "rust1" , since = "1.0.0" ) ]
571- pub fn create_dir_all < P : AsPath + ? Sized > ( path : & P ) -> io:: Result < ( ) > {
568+ pub fn create_dir_all < P : AsPath > ( path : P ) -> io:: Result < ( ) > {
572569 let path = path. as_path ( ) ;
573570 if path. is_dir ( ) { return Ok ( ( ) ) }
574571 if let Some ( p) = path. parent ( ) { try!( create_dir_all ( p) ) }
@@ -590,7 +587,7 @@ pub fn create_dir_all<P: AsPath + ?Sized>(path: &P) -> io::Result<()> {
590587/// This function will return an error if the user lacks permissions to remove
591588/// the directory at the provided `path`, or if the directory isn't empty.
592589#[ stable( feature = "rust1" , since = "1.0.0" ) ]
593- pub fn remove_dir < P : AsPath + ? Sized > ( path : & P ) -> io:: Result < ( ) > {
590+ pub fn remove_dir < P : AsPath > ( path : P ) -> io:: Result < ( ) > {
594591 fs_imp:: rmdir ( path. as_path ( ) )
595592}
596593
@@ -604,7 +601,7 @@ pub fn remove_dir<P: AsPath + ?Sized>(path: &P) -> io::Result<()> {
604601///
605602/// See `file::remove_file` and `fs::remove_dir`
606603#[ stable( feature = "rust1" , since = "1.0.0" ) ]
607- pub fn remove_dir_all < P : AsPath + ? Sized > ( path : & P ) -> io:: Result < ( ) > {
604+ pub fn remove_dir_all < P : AsPath > ( path : P ) -> io:: Result < ( ) > {
608605 let path = path. as_path ( ) ;
609606 for child in try!( read_dir ( path) ) {
610607 let child = try!( child) . path ( ) ;
@@ -657,7 +654,7 @@ pub fn remove_dir_all<P: AsPath + ?Sized>(path: &P) -> io::Result<()> {
657654/// the process lacks permissions to view the contents or if the `path` points
658655/// at a non-directory file
659656#[ stable( feature = "rust1" , since = "1.0.0" ) ]
660- pub fn read_dir < P : AsPath + ? Sized > ( path : & P ) -> io:: Result < ReadDir > {
657+ pub fn read_dir < P : AsPath > ( path : P ) -> io:: Result < ReadDir > {
661658 fs_imp:: readdir ( path. as_path ( ) ) . map ( ReadDir )
662659}
663660
@@ -673,7 +670,7 @@ pub fn read_dir<P: AsPath + ?Sized>(path: &P) -> io::Result<ReadDir> {
673670 reason = "the precise semantics and defaults for a recursive walk \
674671 may change and this may end up accounting for files such \
675672 as symlinks differently") ]
676- pub fn walk_dir < P : AsPath + ? Sized > ( path : & P ) -> io:: Result < WalkDir > {
673+ pub fn walk_dir < P : AsPath > ( path : P ) -> io:: Result < WalkDir > {
677674 let start = try!( read_dir ( path) ) ;
678675 Ok ( WalkDir { cur : Some ( start) , stack : Vec :: new ( ) } )
679676}
@@ -759,8 +756,8 @@ impl PathExt for Path {
759756 reason = "the argument type of u64 is not quite appropriate for \
760757 this function and may change if the standard library \
761758 gains a type to represent a moment in time") ]
762- pub fn set_file_times < P : AsPath + ? Sized > ( path : & P , accessed : u64 ,
763- modified : u64 ) -> io:: Result < ( ) > {
759+ pub fn set_file_times < P : AsPath > ( path : P , accessed : u64 ,
760+ modified : u64 ) -> io:: Result < ( ) > {
764761 fs_imp:: utimes ( path. as_path ( ) , accessed, modified)
765762}
766763
@@ -788,8 +785,7 @@ pub fn set_file_times<P: AsPath + ?Sized>(path: &P, accessed: u64,
788785 reason = "a more granual ability to set specific permissions may \
789786 be exposed on the Permissions structure itself and this \
790787 method may not always exist") ]
791- pub fn set_permissions < P : AsPath + ?Sized > ( path : & P , perm : Permissions )
792- -> io:: Result < ( ) > {
788+ pub fn set_permissions < P : AsPath > ( path : P , perm : Permissions ) -> io:: Result < ( ) > {
793789 fs_imp:: set_perm ( path. as_path ( ) , perm. 0 )
794790}
795791
0 commit comments