Skip to main content

PickedFile

Enum PickedFile 

Source
pub enum PickedFile {
    Path(PathBuf),
    Handle(Box<dyn FileHandle>),
    Stream(Box<dyn FileStream>),
}
Expand description

A file the user picked, as the system gives it.

Variants§

§

Path(PathBuf)

macOS, iOS, Windows and Linux: a path the app opens as any file.

§

Handle(Box<dyn FileHandle>)

The web, and Android where the document seeks, as it always does when writable.

§

Stream(Box<dyn FileStream>)

Android where the document is a pipe: read once, start to end. Read-only picks only.

Implementations§

Source§

impl PickedFile

Source

pub fn url(&self) -> String

The URL a player, or any API that takes a URL, reads the file by, as every system’s player does: a file: URL for a path, absolute and percent-encoded; Android’s content: URI; the web’s blob: URL, of the file as it was when picked. A blob: URL is made once a pick and never revoked: a player may read it after the pick is let go, so the page keeps the file until it unloads.

Source

pub fn read_all( &mut self, ) -> Pin<Box<dyn Future<Output = Result<Vec<u8>>> + '_>>

The whole file, as Flutter’s XFile.readAsBytes reads it: a path is read on a thread of its own, a handle from its start to its end, and a stream through, which uses it up.

Trait Implementations§

Source§

impl Debug for PickedFile

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> Downcast<T> for T

Source§

fn downcast(&self) -> &T

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> Upcast<T> for T

Source§

fn upcast(&self) -> Option<&T>