Trait FSVolumePathConfOperations

Source
pub unsafe trait FSVolumePathConfOperations: NSObjectProtocol {
    // Provided methods
    unsafe fn maximumLinkCount(&self) -> NSInteger
       where Self: Sized + Message { ... }
    unsafe fn maximumNameLength(&self) -> NSInteger
       where Self: Sized + Message { ... }
    unsafe fn restrictsOwnershipChanges(&self) -> bool
       where Self: Sized + Message { ... }
    unsafe fn truncatesLongNames(&self) -> bool
       where Self: Sized + Message { ... }
    unsafe fn maximumXattrSize(&self) -> NSInteger
       where Self: Sized + Message { ... }
    unsafe fn maximumXattrSizeInBits(&self) -> NSInteger
       where Self: Sized + Message { ... }
    unsafe fn maximumFileSize(&self) -> u64
       where Self: Sized + Message { ... }
    unsafe fn maximumFileSizeInBits(&self) -> NSInteger
       where Self: Sized + Message { ... }
}
Available on crate feature FSVolume only.
Expand description

Properties implemented by volumes that support providing the values of system limits or options.

This protocol gathers properties related to the pathconf and fpathconf system calls.

For a file, the value of a property applies to just that file; for a directory, the value applies to all items in the directory.

Properties that represent limits and have a numeric type use -1 to represent no limit.

See also Apple’s documentation

Provided Methods§

Source

unsafe fn maximumLinkCount(&self) -> NSInteger
where Self: Sized + Message,

A property that represents the maximum number of hard links to the object.

Source

unsafe fn maximumNameLength(&self) -> NSInteger
where Self: Sized + Message,

A property that represents the maximum length of a component of a filename.

Source

unsafe fn restrictsOwnershipChanges(&self) -> bool
where Self: Sized + Message,

A Boolean property that indicates whether the volume restricts ownership changes based on authorization.

If this value is true, the volume rejects a chown(2) from anyone other than the superuser.

Source

unsafe fn truncatesLongNames(&self) -> bool
where Self: Sized + Message,

A property that indicates whether the volume truncates files longer than its maximum supported length.

If this value is true, the volume truncates the filename to maximumNameLength if the filename is longer than that. If this value is false, the file system responds with the error code ENAMETOOLONG if the filename is longer than maximumNameLength.

Source

unsafe fn maximumXattrSize(&self) -> NSInteger
where Self: Sized + Message,

The maximum extended attribute size in bytes.

Implement at least one of maximumXattrSize or maximumXattrSizeInBits. FSKit automatically converts from one to another if needed. If you implement both, FSKit uses only the maximumXattrSizeInBits implementation.

Source

unsafe fn maximumXattrSizeInBits(&self) -> NSInteger
where Self: Sized + Message,

The maximum extended attribute size in bits.

Implement at least one of maximumXattrSize or maximumXattrSizeInBits. FSKit automatically converts from one to another if needed. If you implement both, FSKit uses only the maximumXattrSizeInBits implementation.

Source

unsafe fn maximumFileSize(&self) -> u64
where Self: Sized + Message,

The maximum size of a regular file allowed in the volume.

Implement at least one of maximumFileSize or maximumFileSizeInBits. FSKit automatically converts from one to another if needed. If you implement both, FSKit uses only the maximumFileSizeInBits implementation.

Source

unsafe fn maximumFileSizeInBits(&self) -> NSInteger
where Self: Sized + Message,

The minimum number of bits needed to represent, as a signed integer value, the maximum size of a regular file allowed in the volume.

The maximum file size is 2^(maximumFileSizeInBits - 1).

Maximum file size (bytes)Maximum (in hex)Unsigned bitsSigned bits
65,5350xFFFF1617
2,147,483,6470x7FFFFFFF3132
4,294,967,2950xFFFFFFFF3233
18,446,744,073,709,551,6150xFFFFFFFFFFFFFFFF6465

Implement at least one of maximumFileSize or maximumFileSizeInBits. FSKit automatically converts from one to another if needed. If you implement both, FSKit uses only the maximumFileSizeInBits implementation.

Trait Implementations§

Source§

impl ProtocolType for dyn FSVolumePathConfOperations

Source§

const NAME: &'static str = "FSVolumePathConfOperations"

The name of the Objective-C protocol that this type represents. Read more
Source§

fn protocol() -> Option<&'static AnyProtocol>

Get a reference to the Objective-C protocol object that this type represents. Read more
Source§

impl<T> ImplementedBy<T> for dyn FSVolumePathConfOperations

Implementations on Foreign Types§

Source§

impl<T> FSVolumePathConfOperations for ProtocolObject<T>

Implementors§