pub enum File {
Url(UrlData),
Bytes(RawData),
}Variants§
Implementations§
Source§impl File
impl File
Sourcepub fn from_bytes(bytes: impl Into<Vec<u8>>) -> File
pub fn from_bytes(bytes: impl Into<Vec<u8>>) -> File
Creates a File containing raw bytes with the specified MIME type.
§Parameters
bytes: Raw byte content for the file.mimetype: MIME type string describing the bytes (e.g.,"image/png","text/plain").
§Returns
A File::Bytes variant wrapping a RawData that holds the provided bytes and MIME type.
§Examples
ⓘ
let f = File::from_bytes(b"hello".to_vec(), "text/plain");
match f {
File::Bytes(raw) => {
assert_eq!(raw.mimetype.to_string(), "text/plain");
assert_eq!(raw.bytes, b"hello".to_vec());
}
_ => panic!("expected Bytes variant"),
}pub fn from_path(path: impl AsRef<Path>) -> Result<File, Error>
Sourcepub fn from_url(
url: impl Into<String>,
mimetype: Option<&str>,
) -> Result<File, Box<dyn Error + Sync + Send>>
pub fn from_url( url: impl Into<String>, mimetype: Option<&str>, ) -> Result<File, Box<dyn Error + Sync + Send>>
Parses a URL string and returns a File::Url containing the parsed UrlData, optionally with the provided MIME type.
If mimetype is Some, the returned UrlData will include that MIME type; if None, the UrlData will have no MIME type set.
§Errors
Returns an Err if the provided URL string cannot be parsed.
§Examples
ⓘ
// with explicit mimetype
let f = File::from_url("https://example.com/image.png", Some("image/png")).unwrap();
// without mimetype
let f2 = File::from_url("https://example.com/document.pdf", None).unwrap();Trait Implementations§
Source§impl<'de> Deserialize<'de> for File
impl<'de> Deserialize<'de> for File
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<File, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<File, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Serialize for File
impl Serialize for File
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Serialize this value into the given Serde serializer. Read more
impl StructuralPartialEq for File
Auto Trait Implementations§
impl Freeze for File
impl RefUnwindSafe for File
impl Send for File
impl Sync for File
impl Unpin for File
impl UnsafeUnpin for File
impl UnwindSafe for File
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