[−][src]Struct scryfall::card::Card
A Card object containing all fields that scryfall
provides,
For documentation on each field please refer to their documentation
Fields
arena_id: Option<usize>
id: Uuid
lang: String
mtgo_id: Option<usize>
mtgo_foil_id: Option<usize>
multiverse_ids: Option<Vec<usize>>
tcgplayer_id: Option<usize>
oracle_id: Uuid
prints_search_uri: PaginatedURI<Card>
rulings_uri: URI<Vec<Ruling>>
scryfall_uri: String
uri: URI<Card>
card_faces: Option<Vec<CardFace>>
all_parts: Option<Vec<RelatedCard>>
cmc: f32
colors: Vec<Colour>
color_identity: Vec<Colour>
color_indicator: Option<Vec<Colour>>
edhrec_rank: Option<usize>
foil: bool
hand_modifier: Option<String>
layout: Layout
legalities: HashMap<String, Legality>
life_modifier: Option<String>
loyalty: Option<String>
mana_cost: Option<String>
name: String
nonfoil: bool
oracle_text: Option<String>
oversized: bool
power: Option<String>
reserved: bool
toughness: Option<String>
type_line: Option<String>
artist: Option<String>
border_color: BorderColour
collector_number: String
digital: bool
flavor_text: Option<String>
frame_effects: Option<Vec<FrameEffect>>
frame: Frame
full_art: bool
games: Vec<Game>
highres_image: bool
illustration_id: Option<Uuid>
image_uris: Option<HashMap<String, String>>
prices: Price
printed_name: Option<String>
printed_text: Option<String>
printed_type_line: Option<String>
promo: bool
purchase_uris: HashMap<String, String>
rarity: Rarity
released_at: NaiveDate
reprint: bool
scryfall_set_uri: String
set_name: String
set_search_uri: PaginatedURI<Card>
set_uri: URI<Set>
set: String
story_spotlight: bool
watermark: Option<String>
preview: Preview
Methods
impl Card
[src]
ⓘImportant traits for PaginatedURI<T>pub fn all() -> PaginatedURI<Card>
[src]
ⓘImportant traits for PaginatedURI<T>
Returns a PaginatedURI
of all the cards in the scryfall
database.
Examples
use scryfall::card::Card; match Card::all().next().unwrap() { Ok(cards) => assert_ne!(cards.len(), 0), Err(e) => eprintln!("{:?}", e) }
pub fn random() -> Result<Card>
[src]
Fetches a random card.
Examples
use scryfall::card::Card; match Card::random() { Ok(card) => println!("{}", card.name), Err(e) => eprintln!("{:?}", e) }
ⓘImportant traits for PaginatedURI<T>pub fn search<S: Search>(query: S) -> PaginatedURI<Card>
[src]
ⓘImportant traits for PaginatedURI<T>
Returns a PaginatedURI
of the cards that match the search terms.
Examples
use scryfall::card::Card; assert!(Card::search("lightning") .filter_map(Result::ok) .flatten() .all(|x| x.name.to_lowercase().contains("lightning")))
use scryfall::card::Card; use scryfall::card_searcher::{ NumericParam::CollectorNumber, Search, SearchBuilder, StringParam::Set, }; use scryfall::set::SetCode; use std::convert::TryFrom; assert!(SearchBuilder::new() .param(Box::new(CollectorNumber(123))) .param(Box::new(Set(SetCode::try_from("war").unwrap()))) .search() .all(|x| x.map(|x| x[0].name == "Demolish").unwrap_or(false)))
use scryfall::card::Card; use scryfall::card_searcher::{ ComparisonExpr, Search, SearchBuilder, StringParam, }; use scryfall::error::Error; let error = SearchBuilder::new() .param(Box::new(StringParam::Power(ComparisonExpr::AtLeast, "pow".to_string()))) .search() .find_map(Result::err); match error { Some(Error::ScryfallError(e)) => { assert!(e.details.contains("All of your terms were ignored")); assert!(e.warnings.len() > 0); }, _ => () };
pub fn named(query: &str) -> Result<Card>
[src]
Return a card with the exact name.
Examples
use scryfall::card::Card; match Card::named("Lightning Bolt") { Ok(card) => assert_eq!(card.name, "Lightning Bolt"), Err(e) => panic!(format!("{:?}", e)), }
use scryfall::error::Error; assert!(Card::named("Name that doesn't exist").is_err())
pub fn named_fuzzy(query: &str) -> Result<Card>
[src]
Return a card using the scryfall fuzzy finder.
Examples
use scryfall::card::Card; match Card::named_fuzzy("Light Bolt") { Ok(card) => assert_eq!(card.name, "Lightning Bolt"), Err(e) => panic!(format!("{:?}", e)) }
pub fn multiverse(query: usize) -> Result<Card>
[src]
Fetch a card by it's multiverse id.
Examples
use scryfall::card::Card; match Card::multiverse(409574) { Ok(card) => assert_eq!(card.name, "Strip Mine"), Err(e) => panic!(format!("{:?}", e)), }
pub fn mtgo(query: usize) -> Result<Card>
[src]
Fetch a card by it's mtgo id.
Examples
use scryfall::card::Card; match Card::mtgo(54957) { Ok(card) => assert_eq!(card.name, "Ghost Quarter"), Err(e) => panic!(format!("{:?}", e)), }
pub fn arena(query: usize) -> Result<Card>
[src]
Fetch a card by it's arena id.
Examples
use scryfall::card::Card; match Card::arena(67330) { Ok(card) => assert_eq!(card.name, "Yargle, Glutton of Urborg"), Err(e) => panic!(format!("{:?}", e)), }
pub fn tcgplayer(query: usize) -> Result<Card>
[src]
Fetch a card by it's tcgplayer id.
Examples
use scryfall::card::Card; match Card::tcgplayer(67330) { Ok(card) => assert_eq!(card.name, "Fathom Mage"), Err(e) => panic!(format!("{:?}", e)), }
pub fn card(query: Uuid) -> Result<Card>
[src]
Fetch a card by it's Uuid.
Examples
use scryfall::card::Card; match Card::card("0b81b329-4ef5-4b55-9fe7-9ed69477e96b".to_string()) { Ok(card) => assert_eq!(card.name, "Cowed by Wisdom"), Err(e) => panic!(format!("{:?}", e)), }
Trait Implementations
impl Clone for Card
[src]
impl PartialEq<Card> for Card
[src]
impl Debug for Card
[src]
impl StructuralPartialEq for Card
[src]
impl Serialize for Card
[src]
fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error> where
__S: Serializer,
[src]
__S: Serializer,
impl<'de> Deserialize<'de> for Card
[src]
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]
__D: Deserializer<'de>,
Auto Trait Implementations
impl Send for Card
impl Sync for Card
impl Unpin for Card
impl UnwindSafe for Card
impl RefUnwindSafe for Card
Blanket Implementations
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> From<T> for T
[src]
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = !
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> DeserializeOwned for T where
T: Deserialize<'de>,
[src]
T: Deserialize<'de>,
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
U: TryFrom<T>,