tallgrass/pokemon/ability
Types
pub type Ability {
Ability(
id: Int,
name: String,
is_main_series: Bool,
generation: Resource,
names: List(Name),
effect_entries: List(VerboseEffect),
flavor_text_entries: List(FlavorTextVersionGroup),
pokemon: List(AbilityPokemon),
)
}
Constructors
-
Ability( id: Int, name: String, is_main_series: Bool, generation: Resource, names: List(Name), effect_entries: List(VerboseEffect), flavor_text_entries: List(FlavorTextVersionGroup), pokemon: List(AbilityPokemon), )
pub type AbilityPokemon {
AbilityPokemon(is_hidden: Bool, slot: Int, pokemon: Resource)
}
Constructors
-
AbilityPokemon(is_hidden: Bool, slot: Int, pokemon: Resource)
Functions
pub fn fetch(client: Client) -> Result(PaginatedResource, Error)
Fetches a paginated list of pokemon ability resources.
Example
let result = ability.new() |> ability.fetch()
pub fn fetch_by_id(
client: Client,
id: Int,
) -> Result(Ability, Error)
Fetches a pokemon ability given the pokemon ability ID.
Example
let result = ability.new() |> ability.fetch_by_id(1)
pub fn fetch_by_name(
client: Client,
name: String,
) -> Result(Ability, Error)
Fetches a pokemon ability given the pokemon ability name.
Example
let result = ability.new() |> ability.fetch_by_name("stench")
pub fn fetch_resource(
client: Client,
resource: Resource,
) -> Result(Ability, Error)
Fetches a pokemon ability given a pokemon ability resource.
Example
let client = ability.new()
use res <- result.try(client |> ability.fetch())
let assert Ok(first) = res.results |> list.first
client |> ability.fetch_resource(first)