pub trait OpenOptionsExt { fn mode(&mut self, mode: u32) -> &mut SelfⓘNotable traits for &'_ mut Fimpl<'_, F> Future for &'_ mut F where F: Unpin + Future + ?Sized, type Output = <F as Future>::Output;impl<'_, I> Iterator for &'_ mut I where I: Iterator + ?Sized, type Item = <I as Iterator>::Item;impl<R: Read + ?Sized, '_> Read for &'_ mut Rimpl<W: Write + ?Sized, '_> Write for &'_ mut W; fn custom_flags(&mut self, flags: i32) -> &mut SelfⓘNotable traits for &'_ mut Fimpl<'_, F> Future for &'_ mut F where F: Unpin + Future + ?Sized, type Output = <F as Future>::Output;impl<'_, I> Iterator for &'_ mut I where I: Iterator + ?Sized, type Item = <I as Iterator>::Item;impl<R: Read + ?Sized, '_> Read for &'_ mut Rimpl<W: Write + ?Sized, '_> Write for &'_ mut W; }
Unix-specific extensions to fs::OpenOptions
.
fn mode(&mut self, mode: u32) -> &mut SelfⓘNotable traits for &'_ mut F
impl<'_, F> Future for &'_ mut F where
F: Unpin + Future + ?Sized,
type Output = <F as Future>::Output;
impl<'_, I> Iterator for &'_ mut I where
I: Iterator + ?Sized,
type Item = <I as Iterator>::Item;
impl<R: Read + ?Sized, '_> Read for &'_ mut R
impl<W: Write + ?Sized, '_> Write for &'_ mut W
Sets the mode bits that a new file will be created with.
If a new file is created as part of an OpenOptions::open
call then this specified mode
will be used as the permission bits for the new file. If no mode
is set, the default of 0o666
will be used. The operating system masks out bits with the system's umask
, to produce the final permissions.
use std::fs::OpenOptions; use std::os::unix::fs::OpenOptionsExt; let mut options = OpenOptions::new(); options.mode(0o644); // Give read/write for owner and read for others. let file = options.open("foo.txt");
fn custom_flags(&mut self, flags: i32) -> &mut SelfⓘNotable traits for &'_ mut F
impl<'_, F> Future for &'_ mut F where
F: Unpin + Future + ?Sized,
type Output = <F as Future>::Output;
impl<'_, I> Iterator for &'_ mut I where
I: Iterator + ?Sized,
type Item = <I as Iterator>::Item;
impl<R: Read + ?Sized, '_> Read for &'_ mut R
impl<W: Write + ?Sized, '_> Write for &'_ mut W
1.10.0
Pass custom flags to the flags
argument of open
.
The bits that define the access mode are masked out with O_ACCMODE
, to ensure they do not interfere with the access mode set by Rusts options.
Custom flags can only set flags, not remove flags set by Rusts options. This options overwrites any previously set custom flags.
extern crate libc; use std::fs::OpenOptions; use std::os::unix::fs::OpenOptionsExt; let mut options = OpenOptions::new(); options.write(true); if cfg!(unix) { options.custom_flags(libc::O_NOFOLLOW); } let file = options.open("foo.txt");
impl OpenOptionsExt for OpenOptions
[src]
fn mode(&mut self, mode: u32) -> &mut OpenOptions
[src]
fn custom_flags(&mut self, flags: i32) -> &mut OpenOptions
[src]
© 2010 The Rust Project Developers
Licensed under the Apache License, Version 2.0 or the MIT license, at your option.
https://doc.rust-lang.org/std/os/unix/fs/trait.OpenOptionsExt.html