pub struct WebFileData { /* private fields */ }Expand description
A file representation for the web platform
Implementations§
Source§impl WebFileData
impl WebFileData
Sourcepub fn new(file: File, reader: FileReader) -> Self
pub fn new(file: File, reader: FileReader) -> Self
Create a new WebFileData from a web_sys::File
Trait Implementations§
Source§impl Clone for WebFileData
impl Clone for WebFileData
Source§fn clone(&self) -> WebFileData
fn clone(&self) -> WebFileData
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl NativeFileData for WebFileData
impl NativeFileData for WebFileData
Source§fn byte_stream(
&self,
) -> Pin<Box<dyn Stream<Item = Result<Bytes, CapturedError>> + Send + 'static>>
fn byte_stream( &self, ) -> Pin<Box<dyn Stream<Item = Result<Bytes, CapturedError>> + Send + 'static>>
we’d like to use blob to readable stream here, but we cannot.
We just read the entire file into memory and return it as a single chunk. This is not super great, especially given the wasm <-> js boundary duplication cost.
For more efficient streaming of byte data, consider using the dedicated FileStream type which
goes directly from File to fetch request body without going through Rust.
We should maybe update these APIs to use our own custom ByteBuffer type to avoid going through Vec<u8>?
fn name(&self) -> String
fn size(&self) -> u64
fn last_modified(&self) -> u64
fn read_bytes( &self, ) -> Pin<Box<dyn Future<Output = Result<Bytes, CapturedError>> + 'static>>
fn read_string( &self, ) -> Pin<Box<dyn Future<Output = Result<String, CapturedError>> + 'static>>
fn inner(&self) -> &dyn Any
fn path(&self) -> PathBuf
fn content_type(&self) -> Option<String>
impl Send for WebFileData
impl Sync for WebFileData
Auto Trait Implementations§
impl Freeze for WebFileData
impl RefUnwindSafe for WebFileData
impl Unpin for WebFileData
impl UnwindSafe for WebFileData
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> InitializeFromFunction<T> for T
impl<T> InitializeFromFunction<T> for T
Source§fn initialize_from_function(f: fn() -> T) -> T
fn initialize_from_function(f: fn() -> T) -> T
Create an instance of this type from an initialization function
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<Ret> SpawnIfAsync<(), Ret> for Ret
impl<Ret> SpawnIfAsync<(), Ret> for Ret
Source§impl<T, O> SuperFrom<T> for Owhere
O: From<T>,
impl<T, O> SuperFrom<T> for Owhere
O: From<T>,
Source§fn super_from(input: T) -> O
fn super_from(input: T) -> O
Convert from a type to another type.
Source§impl<T, O, M> SuperInto<O, M> for Twhere
O: SuperFrom<T, M>,
impl<T, O, M> SuperInto<O, M> for Twhere
O: SuperFrom<T, M>,
Source§fn super_into(self) -> O
fn super_into(self) -> O
Convert from a type to another type.