pub struct LegacySource {
pub app_state_path: Option<PathBuf>,
pub wine_prefix: Option<PathBuf>,
}Expand description
Provedor de jogos da Legacy Games.
§Exemplo
let source = LegacySource::new(None); // busca o caminho padrão
let games = source.fetch_games_detailed().await.unwrap();Fields§
§app_state_path: Option<PathBuf>Caminho para o arquivo app-state-bck.json. Se None, usa o caminho padrão do sistema operacional.
wine_prefix: Option<PathBuf>Wine prefix utilizado no Linux para localizar o launcher da Legacy Games. Ignorado no Windows.
Implementations§
Source§impl LegacySource
impl LegacySource
pub fn new(app_state_path: Option<PathBuf>) -> Self
pub fn new_with_wine( app_state_path: Option<PathBuf>, wine_prefix: Option<PathBuf>, ) -> Self
Sourcepub async fn fetch_games_detailed(&self) -> Result<Vec<LegacyGame>, AppError>
pub async fn fetch_games_detailed(&self) -> Result<Vec<LegacyGame>, AppError>
Busca os jogos adquiridos com metadados completos.
Retorna LegacyGame ao invés de SourceGame puro, permitindo persistir cover_url e description_raw.
Trait Implementations§
Source§impl GameSource for LegacySource
impl GameSource for LegacySource
fn fetch_games<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<Vec<SourceGame>, AppError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Auto Trait Implementations§
impl Freeze for LegacySource
impl RefUnwindSafe for LegacySource
impl Send for LegacySource
impl Sync for LegacySource
impl Unpin for LegacySource
impl UnsafeUnpin for LegacySource
impl UnwindSafe for LegacySource
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
§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 more