A decentralized music tracking and discovery platform built on AT Protocol 馃幍 rocksky.app
spotify atproto lastfm musicbrainz scrobbling listenbrainz
0

Configure Feed

Select the types of activity you want to include in your feed.

rocksky / crates / rocksky-sdk / src / app_rocksky / library / get_genres.rs
2.4 kB 59 lines
1// @generated by jacquard-lexicon. DO NOT EDIT. 2// 3// Lexicon: app.rocksky.library.getGenres 4// 5// This file was automatically generated from Lexicon schemas. 6// Any manual changes will be overwritten on the next regeneration. 7 8#[allow(unused_imports)] 9use alloc::collections::BTreeMap; 10 11#[allow(unused_imports)] 12use core::marker::PhantomData; 13use jacquard_common::deps::smol_str::SmolStr; 14use jacquard_common::types::value::Data; 15use jacquard_common::{BosStr, DefaultStr, FromStaticStr}; 16use jacquard_derive::IntoStatic; 17use serde::{Deserialize, Serialize}; 18 19#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Eq, IntoStatic)] 20#[serde(rename_all = "camelCase")] 21pub struct GetGenres; 22 23#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Eq, IntoStatic, Default)] 24#[serde( 25 rename_all = "camelCase", 26 bound(deserialize = "S: Deserialize<'de> + BosStr") 27)] 28pub struct GetGenresOutput<S: BosStr = DefaultStr> { 29 #[serde(flatten, default, skip_serializing_if = "Option::is_none")] 30 pub extra_data: Option<BTreeMap<SmolStr, Data<S>>>, 31} 32 33/** Response marker for the `app.rocksky.library.getGenres` query. 34 35Implements `jacquard_common::xrpc::XrpcResp`; successful bodies decode as `Self::Output<S>`, which is `GetGenresOutput<S>` for this endpoint.*/ 36pub struct GetGenresResponse; 37impl jacquard_common::xrpc::XrpcResp for GetGenresResponse { 38 const NSID: &'static str = "app.rocksky.library.getGenres"; 39 const ENCODING: &'static str = "application/json"; 40 type Output<S: BosStr> = GetGenresOutput<S>; 41 type Err = jacquard_common::xrpc::GenericError; 42} 43 44impl jacquard_common::xrpc::XrpcRequest for GetGenres { 45 const NSID: &'static str = "app.rocksky.library.getGenres"; 46 const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query; 47 type Response = GetGenresResponse; 48} 49 50/** Endpoint marker for the `app.rocksky.library.getGenres` query. 51 52Path: `/xrpc/app.rocksky.library.getGenres`. The request payload type is `GetGenres`; send that request with `jacquard::Client` or use this marker through lower-level `XrpcEndpoint` APIs.*/ 53pub struct GetGenresRequest; 54impl jacquard_common::xrpc::XrpcEndpoint for GetGenresRequest { 55 const PATH: &'static str = "/xrpc/app.rocksky.library.getGenres"; 56 const METHOD: jacquard_common::xrpc::XrpcMethod = jacquard_common::xrpc::XrpcMethod::Query; 57 type Request<S: BosStr> = GetGenres; 58 type Response = GetGenresResponse; 59}