currency-codes (empty) → 1.0.0.0
raw patch · 7 files changed
+1313/−0 lines, 7 filesdep +aesondep +basedep +bsonsetup-changed
Dependencies added: aeson, base, bson, lens, random, safe, swagger2, text
Files
- CHANGELOG.md +22/−0
- LICENSE +21/−0
- README.md +47/−0
- Setup.hs +2/−0
- currency-codes.cabal +46/−0
- src/Data/Currency.hs +1169/−0
- stack.yaml +6/−0
+ CHANGELOG.md view
@@ -0,0 +1,22 @@+# Changelog++## v1.0.0 (2017-08-29)+ +- Provide 2 types `Currency` and `Alpha`+- Provide constructors for each currency and Alpha code listed in the standard+- Provide a list of all `Currency`+- Provide instances for:+ - Show+ - Eq+ - Read+ - Generic+ - Data+ - Typeable+ - FromJSON (aeson)+ - ToJSON (aeson)+ - ToSchema (swagger2)+ - Val (bson)+ - Random (random)+ - Ord (Alpha only)+ - Enum (Alpha only+ - Bounded (Alpha only)
+ LICENSE view
@@ -0,0 +1,21 @@+MIT License++Copyright (c) 2017 Chordify++Permission is hereby granted, free of charge, to any person obtaining a copy+of this software and associated documentation files (the "Software"), to deal+in the Software without restriction, including without limitation the rights+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell+copies of the Software, and to permit persons to whom the Software is+furnished to do so, subject to the following conditions:++The above copyright notice and this permission notice shall be included in all+copies or substantial portions of the Software.++THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE+SOFTWARE.
+ README.md view
@@ -0,0 +1,47 @@+# Currency Codes (ISO-4217) [](https://hackage.haskell.org/package/currency-codes)++## Overview ++This package mainly provides 2 data types to represent and manipulate currencies according to+the [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) standard. ++It also provides a handful of instances for common typeclasses (`Show`, `Read`, `Random`, `ToJSON`,+`FromJSON`, `Val`, `ToSchema`). ++## Example++```haskell+import Data.Aeson (ToJSON(..))+import qualified Data.Aeson as Aeson+import Data.Currency (Currency, Alpha)+import qualified Data.Currency as Currency+import GHC.Generics (Generic)+import qualified Safe+++myCurrencies :: [Currency]+myCurrencies =+ [Currency.eur, Currency.usdDollar]++fromAlpha :: Alpha -> [Currency] -> Maybe Currency+fromAlpha α =+ Safe.headMay . filter (== α)+++data Transaction = Transaction+ { amount :: Integer+ , currency :: Currency+ } deriving (Eq, Show, Generic)++instance ToJSON Transaction where+ toJSON = + Aeson.genericToJSON Aeson.defaultOptions+```++## Changelog++[CHANGELOG.md](CHANGELOG.md)++## License++[MIT © 2017 Chordify](LICENSE)
+ Setup.hs view
@@ -0,0 +1,2 @@+import Distribution.Simple+main = defaultMain
+ currency-codes.cabal view
@@ -0,0 +1,46 @@+name: currency-codes+version: 1.0.0.0+synopsis: ISO-4217 Currency Codes+description: ISO-4217 Currency Codes+license: MIT+license-file: LICENSE+author: Chordify+maintainer: Matthias Benkort <matthias@chordify.net>+copyright: (c) 2017 Chordify+category: Data+build-type: Simple+homepage: https://gitlab.com+bug-reports: https://github.com/bos/aeson/issues+extra-source-files: README.md+ CHANGELOG.md+ stack.yaml+ Setup.hs+cabal-version: >=1.10++library+ hs-source-dirs: src+ default-language: Haskell2010+ ghc-options: -Wall+ default-extensions: DataKinds+ , DeriveDataTypeable+ , DeriveFunctor+ , DeriveGeneric+ , ExistentialQuantification+ , FlexibleContexts+ , GADTs+ , GeneralizedNewtypeDeriving+ , MultiParamTypeClasses+ , OverloadedStrings+ , RecordWildCards+ , ScopedTypeVariables+ , TupleSections+ , TypeOperators+ build-depends: base >= 4.7 && < 5+ , aeson+ , bson+ , lens+ , random+ , safe+ , swagger2+ , text+ exposed-modules: Data.Currency
+ src/Data/Currency.hs view
@@ -0,0 +1,1169 @@+-- | A Currency representation as specified in the ISO-4217 standard++module Data.Currency where++import Prelude hiding (Ordering (..))++import Control.Lens ((&), (?~))+import Control.Monad ((>=>))+import Data.Aeson as Aeson+import Data.Aeson (FromJSON (..), ToJSON (..))+import Data.Bson (Val (..), (=:))+import qualified Data.Bson as Bson+import Data.Data (Data)+import Data.Proxy (Proxy (..))+import Data.Swagger (NamedSchema (..), ToSchema (..))+import qualified Data.Swagger as Swagger+import Data.Text (Text)+import Data.Typeable (Typeable)+import GHC.Generics (Generic)+import qualified Safe+import System.Random (Random (..))+++-- | Actual representation of a currency+data Currency = Currency+ { alpha :: Alpha -- ^ Alpha Code+ , numeric :: Int -- ^ Numeric code+ , minor :: Int -- ^ Number of decimal units+ , name :: Text -- ^ English name+ } deriving (Show, Eq, Read, Generic, Data, Typeable)++instance FromJSON Currency where parseJSON = Aeson.genericParseJSON Aeson.defaultOptions++instance ToJSON Currency where toJSON = Aeson.genericToJSON Aeson.defaultOptions++instance ToSchema Currency where declareNamedSchema = Swagger.genericDeclareNamedSchema Swagger.defaultSchemaOptions++instance Val Currency where+ val Currency{..} = Bson.Doc+ [ "alpha" =: alpha+ , "numeric" =: numeric+ , "minor" =: minor+ , "name" =: name+ ]++ cast' v = case v of+ Bson.Doc doc -> Currency+ <$> Bson.lookup "alpha" doc+ <*> Bson.lookup "numeric" doc+ <*> Bson.lookup "minor" doc+ <*> Bson.lookup "name" doc++ _ -> Nothing++instance Random Currency where+ random g =+ let (i, g') = randomR (0, length currencies - 1) g+ in (currencies !! i, g')++ randomR (a, b) g =+ let currencies' = dropWhile (/= a) $ takeWhile (/= b) currencies+ (i, g') = randomR (0, length currencies' - 1) g+ in (currencies' !! i, g')++-- | A type which represents ISO 4217 alphabetic codes as an enum+data Alpha+ = AED -- ^ UAE Dirham+ | AFN -- ^ Afghani+ | ALL -- ^ Lek+ | AMD -- ^ Armenian Dram+ | ANG -- ^ Netherlands Antillean Guilder+ | AOA -- ^ Kwanza+ | ARS -- ^ Argentine Peso+ | AUD -- ^ Australian Dollar+ | AWG -- ^ Aruban Florin+ | AZN -- ^ Azerbaijan Manat+ | BAM -- ^ Convertible Mark+ | BBD -- ^ Barbados Dollar+ | BDT -- ^ Taka+ | BGN -- ^ Bulgarian Lev+ | BHD -- ^ Bahraini Dinar+ | BIF -- ^ Burundi Franc+ | BMD -- ^ Bermudian Dollar+ | BND -- ^ Brunei Dollar+ | BOB -- ^ Boliviano+ | BOV -- ^ Mvdol+ | BRL -- ^ Brazilian Real+ | BSD -- ^ Bahamian Dollar+ | BTN -- ^ Ngultrum+ | BWP -- ^ Pula+ | BYN -- ^ Belarusian Ruble+ | BZD -- ^ Belize Dollar+ | CAD -- ^ Canadian Dollar+ | CDF -- ^ Congolese Franc+ | CHE -- ^ WIR Euro+ | CHF -- ^ Swiss Franc+ | CHW -- ^ WIR Franc+ | CLF -- ^ Unidad de Fomento+ | CLP -- ^ Chilean Peso+ | CNY -- ^ Yuan Renminbi+ | COP -- ^ Colombian Peso+ | COU -- ^ Unidad de Valor Real+ | CRC -- ^ Costa Rican Colon+ | CUC -- ^ Peso Convertible+ | CUP -- ^ Cuban Peso+ | CVE -- ^ Cabo Verde Escudo+ | CZK -- ^ Czech Koruna+ | DJF -- ^ Djibouti Franc+ | DKK -- ^ Danish Krone+ | DOP -- ^ Dominican Peso+ | DZD -- ^ Algerian Dinar+ | EGP -- ^ Egyptian Pound+ | ERN -- ^ Nakfa+ | ETB -- ^ Ethiopian Birr+ | EUR -- ^ Euro+ | FJD -- ^ Fiji Dollar+ | FKP -- ^ Falkland Islands Pound+ | GBP -- ^ Pound Sterling+ | GEL -- ^ Lari+ | GHS -- ^ Ghana Cedi+ | GIP -- ^ Gibraltar Pound+ | GMD -- ^ Dalasi+ | GNF -- ^ Guinean Franc+ | GTQ -- ^ Quetzal+ | GYD -- ^ Guyana Dollar+ | HKD -- ^ Hong Kong Dollar+ | HNL -- ^ Lempira+ | HRK -- ^ Kuna+ | HTG -- ^ Gourde+ | HUF -- ^ Forint+ | IDR -- ^ Rupiah+ | ILS -- ^ New Israeli Sheqel+ | INR -- ^ Indian Rupee+ | IQD -- ^ Iraqi Dinar+ | IRR -- ^ Iranian Rial+ | ISK -- ^ Iceland Krona+ | JMD -- ^ Jamaican Dollar+ | JOD -- ^ Jordanian Dinar+ | JPY -- ^ Yen+ | KES -- ^ Kenyan Shilling+ | KGS -- ^ Som+ | KHR -- ^ Riel+ | KMF -- ^ Comorian Franc+ | KPW -- ^ North Korean Won+ | KRW -- ^ Won+ | KWD -- ^ Kuwaiti Dinar+ | KYD -- ^ Cayman Islands Dollar+ | KZT -- ^ Tenge+ | LAK -- ^ Lao Kip+ | LBP -- ^ Lebanese Pound+ | LKR -- ^ Sri Lanka Rupee+ | LRD -- ^ Liberian Dollar+ | LSL -- ^ Loti+ | LYD -- ^ Libyan Dinar+ | MAD -- ^ Moroccan Dirham+ | MDL -- ^ Moldovan Leu+ | MGA -- ^ Malagasy Ariary+ | MKD -- ^ Denar+ | MMK -- ^ Kyat+ | MNT -- ^ Tugrik+ | MOP -- ^ Pataca+ | MRO -- ^ Ouguiya+ | MUR -- ^ Mauritius Rupee+ | MVR -- ^ Rufiyaa+ | MWK -- ^ Malawi Kwacha+ | MXN -- ^ Mexican Peso+ | MXV -- ^ Mexican Unidad de Inversion (UDI)+ | MYR -- ^ Malaysian Ringgit+ | MZN -- ^ Mozambique Metical+ | NAD -- ^ Namibia Dollar+ | NGN -- ^ Naira+ | NIO -- ^ Cordoba Oro+ | NOK -- ^ Norwegian Krone+ | NPR -- ^ Nepalese Rupee+ | NZD -- ^ New Zealand Dollar+ | OMR -- ^ Rial Omani+ | PAB -- ^ Balboa+ | PEN -- ^ Sol+ | PGK -- ^ Kina+ | PHP -- ^ Philippine Peso+ | PKR -- ^ Pakistan Rupee+ | PLN -- ^ Zloty+ | PYG -- ^ Guarani+ | QAR -- ^ Qatari Rial+ | RON -- ^ Romanian Leu+ | RSD -- ^ Serbian Dinar+ | RUB -- ^ Russian Ruble+ | RWF -- ^ Rwanda Franc+ | SAR -- ^ Saudi Riyal+ | SBD -- ^ Solomon Islands Dollar+ | SCR -- ^ Seychelles Rupee+ | SDG -- ^ Sudanese Pound+ | SEK -- ^ Swedish Krona+ | SGD -- ^ Singapore Dollar+ | SHP -- ^ Saint Helena Pound+ | SLL -- ^ Leone+ | SOS -- ^ Somali Shilling+ | SRD -- ^ Surinam Dollar+ | SSP -- ^ South Sudanese Pound+ | STD -- ^ Dobra+ | SVC -- ^ El Salvador Colon+ | SYP -- ^ Syrian Pound+ | SZL -- ^ Lilangeni+ | THB -- ^ Baht+ | TJS -- ^ Somoni+ | TMT -- ^ Turkmenistan New Manat+ | TND -- ^ Tunisian Dinar+ | TOP -- ^ Pa’anga+ | TRY -- ^ Turkish Lira+ | TTD -- ^ Trinidad and Tobago Dollar+ | TWD -- ^ New Taiwan Dollar+ | TZS -- ^ Tanzanian Shilling+ | UAH -- ^ Hryvnia+ | UGX -- ^ Uganda Shilling+ | USD -- ^ US Dollar+ | USN -- ^ US Dollar (Next day)+ | UYI -- ^ Uruguay Peso en Unidades Indexadas (URUIURUI)+ | UYU -- ^ Peso Uruguayo+ | UZS -- ^ Uzbekistan Sum+ | VEF -- ^ Bolívar+ | VND -- ^ Dong+ | VUV -- ^ Vatu+ | WST -- ^ Tala+ | XAF -- ^ CFA Franc BEAC+ | XAG -- ^ Silver+ | XAU -- ^ Gold+ | XBA -- ^ Bond Markets Unit European Composite Unit (EURCO)+ | XBB -- ^ Bond Markets Unit European Monetary Unit (E.M.U.-6)+ | XBC -- ^ Bond Markets Unit European Unit of Account 9 (E.U.A.-9)+ | XBD -- ^ Bond Markets Unit European Unit of Account 17 (E.U.A.-17)+ | XCD -- ^ East Caribbean Dollar+ | XDR -- ^ SDR (Special Drawing Right)+ | XOF -- ^ CFA Franc BCEAO+ | XPD -- ^ Palladium+ | XPF -- ^ CFP Franc+ | XPT -- ^ Platinum+ | XSU -- ^ Sucre+ | XTS -- ^ Codes specifically reserved for testing purposes+ | XUA -- ^ ADB Unit of Account+ | XXX -- ^ The codes assigned for transactions where no currency is involved+ | YER -- ^ Yemeni Rial+ | ZAR -- ^ Rand+ | ZMW -- ^ Zambian Kwacha+ | ZWL -- ^ Zimbabwe Dollar+ deriving (Show, Eq, Ord, Enum, Bounded, Read, Generic, Data, Typeable)++instance FromJSON Alpha where parseJSON = Aeson.genericParseJSON Aeson.defaultOptions++instance ToJSON Alpha where toJSON = Aeson.genericToJSON Aeson.defaultOptions++instance Val Alpha where val = val . show+ cast' = cast' >=> Safe.readMay++instance ToSchema Alpha where+ declareNamedSchema _ = do+ NamedSchema name schema <- declareNamedSchema (Proxy :: Proxy String)+ return $ NamedSchema name $ schema+ & Swagger.format ?~ "iso4217-alpha"+ & Swagger.example ?~ Aeson.toJSON EUR++instance Random Alpha where+ random g =+ let (r, g') = randomR (fromEnum (minBound :: Alpha), fromEnum(maxBound :: Alpha)) g+ in (toEnum r, g')++ randomR (l, h) g =+ let (r, g') = randomR (fromEnum l, fromEnum h) g+ in (toEnum r, g')++fromAlpha :: Alpha -> [Currency] -> Maybe Currency+fromAlpha α =+ Safe.headMay . filter (== α)++-- Constructor for all currencies++unitOfAccount :: Currency+unitOfAccount =+ Currency XUA 965 0 "ADB Unit of Account"++afghani :: Currency+afghani =+ Currency AFN 971 2 "Afghani"++algerianDinar :: Currency+algerianDinar =+ Currency DZD 012 2 "Algerian Dinar"++argentinePeso :: Currency+argentinePeso =+ Currency ARS 032 2 "Argentine Peso"++armenianDram :: Currency+armenianDram =+ Currency AMD 051 2 "Armenian Dram"++arubanFlorin :: Currency+arubanFlorin =+ Currency AWG 533 2 "Aruban Florin"++australianDollar :: Currency+australianDollar =+ Currency AUD 036 2 "Australian Dollar"++azerbaijanManat :: Currency+azerbaijanManat =+ Currency AZN 944 2 "Azerbaijan Manat"++bahamianDollar :: Currency+bahamianDollar =+ Currency BSD 044 2 "Bahamian Dollar"++bahrainiDinar :: Currency+bahrainiDinar =+ Currency BHD 048 3 "Bahraini Dinar"++baht :: Currency+baht =+ Currency THB 764 2 "Baht"++balboa :: Currency+balboa =+ Currency PAB 590 2 "Balboa"++barbadosDollar :: Currency+barbadosDollar =+ Currency BBD 052 2 "Barbados Dollar"++belarusianRuble :: Currency+belarusianRuble =+ Currency BYN 933 2 "Belarusian Ruble"++belizeDollar :: Currency+belizeDollar =+ Currency BZD 084 2 "Belize Dollar"++bermudianDollar :: Currency+bermudianDollar =+ Currency BMD 060 2 "Bermudian Dollar"++boliviano :: Currency+boliviano =+ Currency BOB 068 2 "Boliviano"++bolívar :: Currency+bolívar =+ Currency VEF 937 2 "Bolívar"++bondMarketsCompositeUnit :: Currency+bondMarketsCompositeUnit =+ Currency XBA 955 0 "Bond Markets Unit European Composite Unit (EURCO)"++bondMarketsMonetaryUnit :: Currency+bondMarketsMonetaryUnit =+ Currency XBB 956 0 "Bond Markets Unit European Monetary Unit (E.M.U.-6)"++bondMarketsUnitofAccount17 :: Currency+bondMarketsUnitofAccount17 =+ Currency XBD 958 0 "Bond Markets Unit European Unit of Account 17 (E.U.A.-17)"++bondMarketsUnitofAccount9 :: Currency+bondMarketsUnitofAccount9 =+ Currency XBC 957 0 "Bond Markets Unit European Unit of Account 9 (E.U.A.-9)"++brazilianReal :: Currency+brazilianReal =+ Currency BRL 986 2 "Brazilian Real"++bruneiDollar :: Currency+bruneiDollar =+ Currency BND 096 2 "Brunei Dollar"++bulgarianLev :: Currency+bulgarianLev =+ Currency BGN 975 2 "Bulgarian Lev"++burundiFranc :: Currency+burundiFranc =+ Currency BIF 108 0 "Burundi Franc"++cfaFrancBCEAO :: Currency+cfaFrancBCEAO =+ Currency XOF 952 0 "CFA Franc BCEAO"++cfaFrancBEAC :: Currency+cfaFrancBEAC =+ Currency XAF 950 0 "CFA Franc BEAC"++cfpFranc :: Currency+cfpFranc =+ Currency XPF 953 0 "CFP Franc"++caboVerdeEscudo :: Currency+caboVerdeEscudo =+ Currency CVE 132 2 "Cabo Verde Escudo"++canadianDollar :: Currency+canadianDollar =+ Currency CAD 124 2 "Canadian Dollar"++caymanIslandsDollar :: Currency+caymanIslandsDollar =+ Currency KYD 136 2 "Cayman Islands Dollar"++chileanPeso :: Currency+chileanPeso =+ Currency CLP 152 0 "Chilean Peso"++testing :: Currency+testing =+ Currency XTS 963 0 "Codes specifically reserved for testing purposes"++colombianPeso :: Currency+colombianPeso =+ Currency COP 170 2 "Colombian Peso"++comorianFranc :: Currency+comorianFranc =+ Currency KMF 174 0 "Comorian Franc"++congoleseFranc :: Currency+congoleseFranc =+ Currency CDF 976 2 "Congolese Franc"++convertibleMark :: Currency+convertibleMark =+ Currency BAM 977 2 "Convertible Mark"++cordobaOro :: Currency+cordobaOro =+ Currency NIO 558 2 "Cordoba Oro"++costaRicanColon :: Currency+costaRicanColon =+ Currency CRC 188 2 "Costa Rican Colon"++cubanPeso :: Currency+cubanPeso =+ Currency CUP 192 2 "Cuban Peso"++czechKoruna :: Currency+czechKoruna =+ Currency CZK 203 2 "Czech Koruna"++dalasi :: Currency+dalasi =+ Currency GMD 270 2 "Dalasi"++danishKrone :: Currency+danishKrone =+ Currency DKK 208 2 "Danish Krone"++denar :: Currency+denar =+ Currency MKD 807 2 "Denar"++djiboutiFranc :: Currency+djiboutiFranc =+ Currency DJF 262 0 "Djibouti Franc"++dobra :: Currency+dobra =+ Currency STD 678 2 "Dobra"++dominicanPeso :: Currency+dominicanPeso =+ Currency DOP 214 2 "Dominican Peso"++dong :: Currency+dong =+ Currency VND 704 0 "Dong"++eastCaribbeanDollar :: Currency+eastCaribbeanDollar =+ Currency XCD 951 2 "East Caribbean Dollar"++egyptianPound :: Currency+egyptianPound =+ Currency EGP 818 2 "Egyptian Pound"++elSalvadorColon :: Currency+elSalvadorColon =+ Currency SVC 222 2 "El Salvador Colon"++ethiopianBirr :: Currency+ethiopianBirr =+ Currency ETB 230 2 "Ethiopian Birr"++euro :: Currency+euro =+ Currency EUR 978 2 "Euro"++falklandIslandsPound :: Currency+falklandIslandsPound =+ Currency FKP 238 2 "Falkland Islands Pound"++fijiDollar :: Currency+fijiDollar =+ Currency FJD 242 2 "Fiji Dollar"++forint :: Currency+forint =+ Currency HUF 348 2 "Forint"++ghanaCedi :: Currency+ghanaCedi =+ Currency GHS 936 2 "Ghana Cedi"++gibraltarPound :: Currency+gibraltarPound =+ Currency GIP 292 2 "Gibraltar Pound"++gold :: Currency+gold =+ Currency XAU 959 0 "Gold"++gourde :: Currency+gourde =+ Currency HTG 332 2 "Gourde"++guarani :: Currency+guarani =+ Currency PYG 600 0 "Guarani"++guineanFranc :: Currency+guineanFranc =+ Currency GNF 324 0 "Guinean Franc"++guyanaDollar :: Currency+guyanaDollar =+ Currency GYD 328 2 "Guyana Dollar"++hongKongDollar :: Currency+hongKongDollar =+ Currency HKD 344 2 "Hong Kong Dollar"++hryvnia :: Currency+hryvnia =+ Currency UAH 980 2 "Hryvnia"++icelandKrona :: Currency+icelandKrona =+ Currency ISK 352 0 "Iceland Krona"++indianRupee :: Currency+indianRupee =+ Currency INR 356 2 "Indian Rupee"++iranianRial :: Currency+iranianRial =+ Currency IRR 364 2 "Iranian Rial"++iraqiDinar :: Currency+iraqiDinar =+ Currency IQD 368 3 "Iraqi Dinar"++jamaicanDollar :: Currency+jamaicanDollar =+ Currency JMD 388 2 "Jamaican Dollar"++jordanianDinar :: Currency+jordanianDinar =+ Currency JOD 400 3 "Jordanian Dinar"++kenyanShilling :: Currency+kenyanShilling =+ Currency KES 404 2 "Kenyan Shilling"++kina :: Currency+kina =+ Currency PGK 598 2 "Kina"++kuna :: Currency+kuna =+ Currency HRK 191 2 "Kuna"++kuwaitiDinar :: Currency+kuwaitiDinar =+ Currency KWD 414 3 "Kuwaiti Dinar"++kwanza :: Currency+kwanza =+ Currency AOA 973 2 "Kwanza"++kyat :: Currency+kyat =+ Currency MMK 104 2 "Kyat"++laoKip :: Currency+laoKip =+ Currency LAK 418 2 "Lao Kip"++lari :: Currency+lari =+ Currency GEL 981 2 "Lari"++lebanesePound :: Currency+lebanesePound =+ Currency LBP 422 2 "Lebanese Pound"++lek :: Currency+lek =+ Currency ALL 008 2 "Lek"++lempira :: Currency+lempira =+ Currency HNL 340 2 "Lempira"++leone :: Currency+leone =+ Currency SLL 694 2 "Leone"++liberianDollar :: Currency+liberianDollar =+ Currency LRD 430 2 "Liberian Dollar"++libyanDinar :: Currency+libyanDinar =+ Currency LYD 434 3 "Libyan Dinar"++lilangeni :: Currency+lilangeni =+ Currency SZL 748 2 "Lilangeni"++loti :: Currency+loti =+ Currency LSL 426 2 "Loti"++malagasyAriary :: Currency+malagasyAriary =+ Currency MGA 969 2 "Malagasy Ariary"++malawiKwacha :: Currency+malawiKwacha =+ Currency MWK 454 2 "Malawi Kwacha"++malaysianRinggit :: Currency+malaysianRinggit =+ Currency MYR 458 2 "Malaysian Ringgit"++mauritiusRupee :: Currency+mauritiusRupee =+ Currency MUR 480 2 "Mauritius Rupee"++mexicanPeso :: Currency+mexicanPeso =+ Currency MXN 484 2 "Mexican Peso"++mexicanUnidadDeInversion :: Currency+mexicanUnidadDeInversion =+ Currency MXV 979 2 "Mexican Unidad de Inversion (UDI)"++moldovanLeu :: Currency+moldovanLeu =+ Currency MDL 498 2 "Moldovan Leu"++moroccanDirham :: Currency+moroccanDirham =+ Currency MAD 504 2 "Moroccan Dirham"++mozambiqueMetical :: Currency+mozambiqueMetical =+ Currency MZN 943 2 "Mozambique Metical"++mvdol :: Currency+mvdol =+ Currency BOV 984 2 "Mvdol"++naira :: Currency+naira =+ Currency NGN 566 2 "Naira"++nakfa :: Currency+nakfa =+ Currency ERN 232 2 "Nakfa"++namibiaDollar :: Currency+namibiaDollar =+ Currency NAD 516 2 "Namibia Dollar"++nepaleseRupee :: Currency+nepaleseRupee =+ Currency NPR 524 2 "Nepalese Rupee"++netherlandsAntilleanGuilder :: Currency+netherlandsAntilleanGuilder =+ Currency ANG 532 2 "Netherlands Antillean Guilder"++newIsraeliSheqel :: Currency+newIsraeliSheqel =+ Currency ILS 376 2 "New Israeli Sheqel"++newTaiwanDollar :: Currency+newTaiwanDollar =+ Currency TWD 901 2 "New Taiwan Dollar"++newZealandDollar :: Currency+newZealandDollar =+ Currency NZD 554 2 "New Zealand Dollar"++ngultrum :: Currency+ngultrum =+ Currency BTN 064 2 "Ngultrum"++northKoreanWon :: Currency+northKoreanWon =+ Currency KPW 408 2 "North Korean Won"++norwegianKrone :: Currency+norwegianKrone =+ Currency NOK 578 2 "Norwegian Krone"++ouguiya :: Currency+ouguiya =+ Currency MRO 478 2 "Ouguiya"++pakistanRupee :: Currency+pakistanRupee =+ Currency PKR 586 2 "Pakistan Rupee"++palladium :: Currency+palladium =+ Currency XPD 964 0 "Palladium"++pataca :: Currency+pataca =+ Currency MOP 446 2 "Pataca"++paanga :: Currency+paanga =+ Currency TOP 776 2 "Pa’anga"++pesoConvertible :: Currency+pesoConvertible =+ Currency CUC 931 2 "Peso Convertible"++pesoUruguayo :: Currency+pesoUruguayo =+ Currency UYU 858 2 "Peso Uruguayo"++philippinePeso :: Currency+philippinePeso =+ Currency PHP 608 2 "Philippine Peso"++platinum :: Currency+platinum =+ Currency XPT 962 0 "Platinum"++poundSterling :: Currency+poundSterling =+ Currency GBP 826 2 "Pound Sterling"++pula :: Currency+pula =+ Currency BWP 072 2 "Pula"++qatariRial :: Currency+qatariRial =+ Currency QAR 634 2 "Qatari Rial"++quetzal :: Currency+quetzal =+ Currency GTQ 320 2 "Quetzal"++rand :: Currency+rand =+ Currency ZAR 710 2 "Rand"++rialOmani :: Currency+rialOmani =+ Currency OMR 512 3 "Rial Omani"++riel :: Currency+riel =+ Currency KHR 116 2 "Riel"++romanianLeu :: Currency+romanianLeu =+ Currency RON 946 2 "Romanian Leu"++rufiyaa :: Currency+rufiyaa =+ Currency MVR 462 2 "Rufiyaa"++rupiah :: Currency+rupiah =+ Currency IDR 360 2 "Rupiah"++russianRuble :: Currency+russianRuble =+ Currency RUB 643 2 "Russian Ruble"++rwandaFranc :: Currency+rwandaFranc =+ Currency RWF 646 0 "Rwanda Franc"++sdr :: Currency+sdr =+ Currency XDR 960 0 "SDR (Special Drawing Right)"++saintHelenaPound :: Currency+saintHelenaPound =+ Currency SHP 654 2 "Saint-Helena Pound"++saudiRiyal :: Currency+saudiRiyal =+ Currency SAR 682 2 "Saudi Riyal"++serbianDinar :: Currency+serbianDinar =+ Currency RSD 941 2 "Serbian Dinar"++seychellesRupee :: Currency+seychellesRupee =+ Currency SCR 690 2 "Seychelles Rupee"++silver :: Currency+silver =+ Currency XAG 961 0 "Silver"++singaporeDollar :: Currency+singaporeDollar =+ Currency SGD 702 2 "Singapore Dollar"++sol :: Currency+sol =+ Currency PEN 604 2 "Sol"++solomonIslandsDollar :: Currency+solomonIslandsDollar =+ Currency SBD 090 2 "Solomon Islands Dollar"++som :: Currency+som =+ Currency KGS 417 2 "Som"++somaliShilling :: Currency+somaliShilling =+ Currency SOS 706 2 "Somali Shilling"++somoni :: Currency+somoni =+ Currency TJS 972 2 "Somoni"++southSudanesePound :: Currency+southSudanesePound =+ Currency SSP 728 2 "South Sudanese Pound"++sriLankaRupee :: Currency+sriLankaRupee =+ Currency LKR 144 2 "Sri Lanka Rupee"++sucre :: Currency+sucre =+ Currency XSU 994 0 "Sucre"++sudanesePound :: Currency+sudanesePound =+ Currency SDG 938 2 "Sudanese Pound"++surinamDollar :: Currency+surinamDollar =+ Currency SRD 968 2 "Surinam Dollar"++swedishKrona :: Currency+swedishKrona =+ Currency SEK 752 2 "Swedish Krona"++swissFranc :: Currency+swissFranc =+ Currency CHF 756 2 "Swiss Franc"++syrianPound :: Currency+syrianPound =+ Currency SYP 760 2 "Syrian Pound"++taka :: Currency+taka =+ Currency BDT 050 2 "Taka"++tala :: Currency+tala =+ Currency WST 882 2 "Tala"++tanzanianShilling :: Currency+tanzanianShilling =+ Currency TZS 834 2 "Tanzanian Shilling"++tenge :: Currency+tenge =+ Currency KZT 398 2 "Tenge"++noCurrency :: Currency+noCurrency =+ Currency XXX 999 0 "The codes assigned for transactions where no currency is involved"++trinidadAndTobagoDollar :: Currency+trinidadAndTobagoDollar =+ Currency TTD 780 2 "Trinidad and Tobago Dollar"++tugrik :: Currency+tugrik =+ Currency MNT 496 2 "Tugrik"++tunisianDinar :: Currency+tunisianDinar =+ Currency TND 788 3 "Tunisian Dinar"++turkishLira :: Currency+turkishLira =+ Currency TRY 949 2 "Turkish Lira"++turkmenistanNewManat :: Currency+turkmenistanNewManat =+ Currency TMT 934 2 "Turkmenistan New Manat"++uAEDirham :: Currency+uAEDirham =+ Currency AED 784 2 "UAE Dirham"++usDollar :: Currency+usDollar =+ Currency USD 840 2 "US Dollar"++usDollarNextday :: Currency+usDollarNextday =+ Currency USN 997 2 "US Dollar (Next day)"++ugandaShilling :: Currency+ugandaShilling =+ Currency UGX 800 0 "Uganda"++unidaddeFomento :: Currency+unidaddeFomento =+ Currency CLF 990 4 "Unidad de Fomento"++unidaddeValorReal :: Currency+unidaddeValorReal =+ Currency COU 970 2 "Unidad de Valor Real"++uruguayPesoEnUnidadesIndexadas :: Currency+uruguayPesoEnUnidadesIndexadas =+ Currency UYI 940 0 "Uruguay Peso en Unidades Indexadas (URUIURUI)"++uzbekistanSum :: Currency+uzbekistanSum =+ Currency UZS 860 2 "Uzbekistan"++vatu :: Currency+vatu =+ Currency VUV 548 0 "Vatu"++wirEuro :: Currency+wirEuro =+ Currency CHE 947 2 "WIR Euro"++wirFranc :: Currency+wirFranc =+ Currency CHW 948 2 "WIR Franc"++won :: Currency+won =+ Currency KRW 410 0 "Won"++yemeniRial :: Currency+yemeniRial =+ Currency YER 886 2 "Yemeni Rial"++yen :: Currency+yen =+ Currency JPY 392 0 "Yen"++yuanRenminbi :: Currency+yuanRenminbi =+ Currency CNY 156 2 "Yuan Renminbi"++zambianKwacha :: Currency+zambianKwacha =+ Currency ZMW 967 2 "Zambian Kwacha"++zimbabweDollar :: Currency+zimbabweDollar =+ Currency ZWL 932 2 "Zimbabwe Dollar"++zloty :: Currency+zloty =+ Currency PLN 985 2 "Zloty"++-- | List of all currencies in the standard+currencies :: [Currency]+currencies =+ [ unitOfAccount+ , afghani+ , algerianDinar+ , argentinePeso+ , armenianDram+ , arubanFlorin+ , australianDollar+ , azerbaijanManat+ , bahamianDollar+ , bahrainiDinar+ , baht+ , balboa+ , barbadosDollar+ , belarusianRuble+ , belizeDollar+ , bermudianDollar+ , boliviano+ , bolívar+ , bondMarketsCompositeUnit+ , bondMarketsMonetaryUnit+ , bondMarketsUnitofAccount17+ , bondMarketsUnitofAccount9+ , brazilianReal+ , bruneiDollar+ , bulgarianLev+ , burundiFranc+ , cfaFrancBCEAO+ , cfaFrancBEAC+ , cfpFranc+ , caboVerdeEscudo+ , canadianDollar+ , caymanIslandsDollar+ , chileanPeso+ , testing+ , colombianPeso+ , comorianFranc+ , congoleseFranc+ , convertibleMark+ , cordobaOro+ , costaRicanColon+ , cubanPeso+ , czechKoruna+ , dalasi+ , danishKrone+ , denar+ , djiboutiFranc+ , dobra+ , dominicanPeso+ , dong+ , eastCaribbeanDollar+ , egyptianPound+ , elSalvadorColon+ , ethiopianBirr+ , euro+ , falklandIslandsPound+ , fijiDollar+ , forint+ , ghanaCedi+ , gibraltarPound+ , gold+ , gourde+ , guarani+ , guineanFranc+ , guyanaDollar+ , hongKongDollar+ , hryvnia+ , icelandKrona+ , indianRupee+ , iranianRial+ , iraqiDinar+ , jamaicanDollar+ , jordanianDinar+ , kenyanShilling+ , kina+ , kuna+ , kuwaitiDinar+ , kwanza+ , kyat+ , laoKip+ , lari+ , lebanesePound+ , lek+ , lempira+ , leone+ , liberianDollar+ , libyanDinar+ , lilangeni+ , loti+ , malagasyAriary+ , malawiKwacha+ , malaysianRinggit+ , mauritiusRupee+ , mexicanPeso+ , mexicanUnidadDeInversion+ , moldovanLeu+ , moroccanDirham+ , mozambiqueMetical+ , mvdol+ , naira+ , nakfa+ , namibiaDollar+ , nepaleseRupee+ , netherlandsAntilleanGuilder+ , newIsraeliSheqel+ , newTaiwanDollar+ , newZealandDollar+ , ngultrum+ , northKoreanWon+ , norwegianKrone+ , ouguiya+ , pakistanRupee+ , palladium+ , pataca+ , paanga+ , pesoConvertible+ , pesoUruguayo+ , philippinePeso+ , platinum+ , poundSterling+ , pula+ , qatariRial+ , quetzal+ , rand+ , rialOmani+ , riel+ , romanianLeu+ , rufiyaa+ , rupiah+ , russianRuble+ , rwandaFranc+ , sdr+ , saintHelenaPound+ , saudiRiyal+ , serbianDinar+ , seychellesRupee+ , silver+ , singaporeDollar+ , sol+ , solomonIslandsDollar+ , som+ , somaliShilling+ , somoni+ , southSudanesePound+ , sriLankaRupee+ , sucre+ , sudanesePound+ , surinamDollar+ , swedishKrona+ , swissFranc+ , syrianPound+ , taka+ , tala+ , tanzanianShilling+ , tenge+ , noCurrency+ , trinidadAndTobagoDollar+ , tugrik+ , tunisianDinar+ , turkishLira+ , turkmenistanNewManat+ , uAEDirham+ , usDollar+ , usDollarNextday+ , ugandaShilling+ , unidaddeFomento+ , unidaddeValorReal+ , uruguayPesoEnUnidadesIndexadas+ , uzbekistanSum+ , vatu+ , wirEuro+ , wirFranc+ , won+ , yemeniRial+ , yen+ , yuanRenminbi+ , zambianKwacha+ , zloty+ , zimbabweDollar+ ]
+ stack.yaml view
@@ -0,0 +1,6 @@+resolver: lts-9.1+packages:+- '.'+extra-deps: []+flags: {}+extra-package-dbs: []