ebird-api-0.2.0.0: A Haskell description of the eBird API
Copyright(c) 2023 Finley McIlwaine
LicenseMIT (see LICENSE)
MaintainerFinley McIlwaine <finleymcilwaine@gmail.com>
Safe HaskellSafe-Inferred
LanguageHaskell2010

Data.EBird.API.Hotspots

Description

Types and functions related to eBird hotspot API values.

Synopsis

Hotspot type

data Hotspot Source #

eBird hotspots, as returned by the RegionHotspotsAPI

Constructors

Hotspot 

Fields

Instances

Instances details
Read Hotspot Source # 
Instance details

Defined in Data.EBird.API.Hotspots

Show Hotspot Source # 
Instance details

Defined in Data.EBird.API.Hotspots

Eq Hotspot Source # 
Instance details

Defined in Data.EBird.API.Hotspots

Methods

(==) :: Hotspot -> Hotspot -> Bool #

(/=) :: Hotspot -> Hotspot -> Bool #

FromJSON Hotspot Source #

Explicit instance for compatibility with their field names

Instance details

Defined in Data.EBird.API.Hotspots

ToJSON Hotspot Source #

Explicit instance for compatibility with their field names

Instance details

Defined in Data.EBird.API.Hotspots

(k ~ A_Lens, a ~ Region, b ~ Region) => LabelOptic "countryCode" k Hotspot Hotspot a b Source # 
Instance details

Defined in Data.EBird.API.Hotspots

(k ~ A_Lens, a ~ Maybe EBirdDateTime, b ~ Maybe EBirdDateTime) => LabelOptic "latestObsDateTime" k Hotspot Hotspot a b Source # 
Instance details

Defined in Data.EBird.API.Hotspots

(k ~ A_Lens, a ~ Double, b ~ Double) => LabelOptic "latitude" k Hotspot Hotspot a b Source # 
Instance details

Defined in Data.EBird.API.Hotspots

(k ~ A_Lens, a ~ Text, b ~ Text) => LabelOptic "locationId" k Hotspot Hotspot a b Source # 
Instance details

Defined in Data.EBird.API.Hotspots

(k ~ A_Lens, a ~ Text, b ~ Text) => LabelOptic "locationName" k Hotspot Hotspot a b Source # 
Instance details

Defined in Data.EBird.API.Hotspots

(k ~ A_Lens, a ~ Double, b ~ Double) => LabelOptic "longitude" k Hotspot Hotspot a b Source # 
Instance details

Defined in Data.EBird.API.Hotspots

(k ~ A_Lens, a ~ Maybe Integer, b ~ Maybe Integer) => LabelOptic "numSpeciesAllTime" k Hotspot Hotspot a b Source # 
Instance details

Defined in Data.EBird.API.Hotspots

(k ~ A_Lens, a ~ Region, b ~ Region) => LabelOptic "subnational1Code" k Hotspot Hotspot a b Source # 
Instance details

Defined in Data.EBird.API.Hotspots

(k ~ A_Lens, a ~ Region, b ~ Region) => LabelOptic "subnational2Code" k Hotspot Hotspot a b Source # 
Instance details

Defined in Data.EBird.API.Hotspots

Optics for the Hotspot type

Auxiliary eBird hotspot-related API types

data CSVOrJSONFormat Source #

Used to specify what format hotspot values should be returned in from the hotspots APIs.

Constructors

CSVFormat 
JSONFormat 

Instances

Instances details
IsString CSVOrJSONFormat Source #

Use this instance carefully! It throws runtime exceptions if the string is malformatted.

Instance details

Defined in Data.EBird.API.Hotspots

Read CSVOrJSONFormat Source # 
Instance details

Defined in Data.EBird.API.Hotspots

Show CSVOrJSONFormat Source # 
Instance details

Defined in Data.EBird.API.Hotspots

EBirdString CSVOrJSONFormat Source #

The eBird string of a CSVOrJSONFormat value is either "csv" or "json".

Instance details

Defined in Data.EBird.API.Hotspots

Eq CSVOrJSONFormat Source # 
Instance details

Defined in Data.EBird.API.Hotspots

ToHttpApiData CSVOrJSONFormat Source # 
Instance details

Defined in Data.EBird.API.Hotspots

attoparsec parsers

parseCSVOrJSONFormat :: Parser CSVOrJSONFormat Source #

Parse a list of eBird API taxononomy categories. To avoid the partial behavior of converting a sepBy1 result into a NonEmpty, we manually parse the first category followed by an optional tail.