selene_core/library/collection/frontend_impls.rs
1use std::str::FromStr;
2
3use lunar_lib::database::{DatabaseError, DbHandle, EntryIdExt};
4
5use crate::{
6 database::LibraryDb,
7 library::collection::{Collection, CollectionId},
8};
9
10impl Collection {
11 pub fn db_find_by_name(name: impl AsRef<str>) -> Result<Option<Self>, DatabaseError>
12 where
13 Self: 'static,
14 {
15 let db = DbHandle::<LibraryDb>::open()?;
16 Ok(CollectionId::from_str(name.as_ref()).unwrap().db_get(&db)?)
17 }
18}