pub struct BookmarkFullData {
pub name: String,
pub url: String,
pub main_website: Vec<MainWebsite>,
}Expand description
Represents the complete data structure for a bookmark, including its decrypted URL and associated main websites.
This struct is used to store bookmark information after processing and decrypting the raw database data.
Fields§
§name: StringThe name/title of the bookmark
url: StringThe decrypted URL of the bookmark
main_website: Vec<MainWebsite>A list of main websites associated with this bookmark
Implementations§
source§impl BookmarkFullData
impl BookmarkFullData
sourcepub async fn new(
bookmark: Bookmark,
database_encryption: Arc<dyn DatabaseEncryptionTrait + Send + Sync>,
) -> AppResult<Self>
pub async fn new( bookmark: Bookmark, database_encryption: Arc<dyn DatabaseEncryptionTrait + Send + Sync>, ) -> AppResult<Self>
Creates a new BookmarkFullData instance from a raw Bookmark and
encryption service.
This method handles the decryption of URLs and processing of main website data from the raw bookmark data stored in the database.
§Arguments
bookmark- The raw bookmark data from the databasedatabase_encryption- The encryption service used to decrypt the URL
§Returns
Returns a Result containing either the processed BookmarkFullData or
an error
§Errors
This function will return an error in the following situations:
- If the URL cannot be decoded as valid UTF-8
- If the decrypted URL is empty
- If the URL decryption process fails
Trait Implementations§
source§impl Clone for BookmarkFullData
impl Clone for BookmarkFullData
source§fn clone(&self) -> BookmarkFullData
fn clone(&self) -> BookmarkFullData
Returns a copy 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 Debug for BookmarkFullData
impl Debug for BookmarkFullData
source§impl From<BookmarkFullData> for Bookmark
impl From<BookmarkFullData> for Bookmark
source§fn from(bookmark: BookmarkFullData) -> Self
fn from(bookmark: BookmarkFullData) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl Freeze for BookmarkFullData
impl RefUnwindSafe for BookmarkFullData
impl Send for BookmarkFullData
impl Sync for BookmarkFullData
impl Unpin for BookmarkFullData
impl UnwindSafe for BookmarkFullData
Blanket Implementations§
§impl<T> AnySync for T
impl<T> AnySync for T
§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
🔬This is a nightly-only experimental API. (
clone_to_uninit)§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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 moreCreates a shared type from an unshared type.
§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.