This commit is contained in:
2023-05-28 02:36:00 +02:00
parent 06feabbdce
commit 210b629358
2 changed files with 31 additions and 37 deletions

View File

@@ -382,18 +382,18 @@ impl Format for Book {
impl Format for SearchBook { impl Format for SearchBook {
fn format(&self, max_size: usize) -> FormatResult { fn format(&self, max_size: usize) -> FormatResult {
self.clone().as_book().format(max_size) Into::<Book>::into(self.clone()).format(max_size)
} }
} }
impl Format for AuthorBook { impl Format for AuthorBook {
fn format(&self, max_size: usize) -> FormatResult { fn format(&self, max_size: usize) -> FormatResult {
self.clone().as_book().format(max_size) Into::<Book>::into(self.clone()).format(max_size)
} }
} }
impl Format for TranslatorBook { impl Format for TranslatorBook {
fn format(&self, max_size: usize) -> FormatResult { fn format(&self, max_size: usize) -> FormatResult {
self.clone().as_book().format(max_size) Into::<Book>::into(self.clone()).format(max_size)
} }
} }

View File

@@ -175,12 +175,6 @@ pub struct Book {
pub pages: Option<u32>, pub pages: Option<u32>,
} }
impl AsBook<Book> for Book {
fn as_book(&self) -> Self {
self.clone()
}
}
#[derive(Deserialize, Debug, Clone)] #[derive(Deserialize, Debug, Clone)]
pub struct SearchBook { pub struct SearchBook {
pub id: u32, pub id: u32,
@@ -195,17 +189,17 @@ pub struct SearchBook {
pub sequences: Vec<Sequence>, pub sequences: Vec<Sequence>,
} }
impl AsBook<Book> for SearchBook { impl From<SearchBook> for Book {
fn as_book(&self) -> Book { fn from(value: SearchBook) -> Self {
Book { Book {
id: self.id, id: value.id,
title: self.title.clone(), title: value.title.clone(),
lang: self.lang.clone(), lang: value.lang.clone(),
available_types: self.available_types.clone(), available_types: value.available_types.clone(),
annotation_exists: self.annotation_exists, annotation_exists: value.annotation_exists,
authors: self.authors.clone(), authors: value.authors.clone(),
translators: self.translators.clone(), translators: value.translators.clone(),
sequences: self.sequences.clone(), sequences: value.sequences.clone(),
genres: vec![], genres: vec![],
pages: None pages: None
} }
@@ -225,17 +219,17 @@ pub struct AuthorBook {
pub sequences: Vec<Sequence>, pub sequences: Vec<Sequence>,
} }
impl AsBook<Book> for AuthorBook { impl From<AuthorBook> for Book {
fn as_book(&self) -> Book { fn from(value: AuthorBook) -> Self {
Book { Book {
id: self.id, id: value.id,
title: self.title.clone(), title: value.title.clone(),
lang: self.lang.clone(), lang: value.lang.clone(),
available_types: self.available_types.clone(), available_types: value.available_types.clone(),
annotation_exists: self.annotation_exists, annotation_exists: value.annotation_exists,
authors: vec![], authors: vec![],
translators: self.translators.clone(), translators: value.translators.clone(),
sequences: self.sequences.clone(), sequences: value.sequences.clone(),
genres: vec![], genres: vec![],
pages: None pages: None
} }
@@ -255,17 +249,17 @@ pub struct TranslatorBook {
pub sequences: Vec<Sequence>, pub sequences: Vec<Sequence>,
} }
impl AsBook<Book> for TranslatorBook { impl From<TranslatorBook> for Book {
fn as_book(&self) -> Book { fn from(value: TranslatorBook) -> Self {
Book { Book {
id: self.id, id: value.id,
title: self.title.clone(), title: value.title.clone(),
lang: self.lang.clone(), lang: value.lang.clone(),
available_types: self.available_types.clone(), available_types: value.available_types.clone(),
annotation_exists: self.annotation_exists, annotation_exists: value.annotation_exists,
authors: self.authors.clone(), authors: value.authors.clone(),
translators: vec![], translators: vec![],
sequences: self.sequences.clone(), sequences: value.sequences.clone(),
genres: vec![], genres: vec![],
pages: None pages: None
} }