pub struct IoValidator { /* private fields */ }Expand description
IO validator for file operations
Implementations§
Source§impl IoValidator
impl IoValidator
Sourcepub fn with_permissions(permission_model: PermissionModel) -> Self
pub fn with_permissions(permission_model: PermissionModel) -> Self
Create an IO validator with custom permission model
Sourcepub fn validate_read(&self, path: &Path) -> Result<()>
pub fn validate_read(&self, path: &Path) -> Result<()>
Validate a read operation
Checks:
- File exists
- Read permissions
- Path traversal prevention
Sourcepub fn validate_write(&self, path: &Path) -> Result<()>
pub fn validate_write(&self, path: &Path) -> Result<()>
Validate a write operation
Checks:
- Parent directory exists
- Write permissions
- Path traversal prevention
Sourcepub fn validate_reads(&self, paths: &[&Path]) -> Result<Vec<PathValidation>>
pub fn validate_reads(&self, paths: &[&Path]) -> Result<Vec<PathValidation>>
Validate multiple read operations
Sourcepub fn validate_writes(&self, paths: &[&Path]) -> Result<Vec<PathValidation>>
pub fn validate_writes(&self, paths: &[&Path]) -> Result<Vec<PathValidation>>
Validate multiple write operations
Trait Implementations§
Source§impl Debug for IoValidator
impl Debug for IoValidator
Auto Trait Implementations§
impl Freeze for IoValidator
impl RefUnwindSafe for IoValidator
impl Send for IoValidator
impl Sync for IoValidator
impl Unpin for IoValidator
impl UnsafeUnpin for IoValidator
impl UnwindSafe for IoValidator
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> EvidenceKind for T
impl<T> EvidenceKind for T
default fn kind_label(&self) -> &'static str
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request