seekia/resources/currencies/currencies.go

710 lines
16 KiB
Go
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

// currencies provides a list of currencies, and a way to retrieve information about them
package currencies
import "errors"
type CurrencyObject struct{
// The name of the currency
Name string
// The three letter ISO code that is used to refer to the currency
Code string
// The symbol or abbreviation prefix for displaying the amount.
// Example: $5, €6
Symbol string
}
func VerifyCurrencyCode(currencyCode string)(bool, error){
currencyObjectsMap, err := GetCurrencyObjectsMap()
if (err != nil){ return false, err }
_, exists := currencyObjectsMap[currencyCode]
if (exists == true){
return true, nil
}
return false, nil
}
var currencyObjectsMap map[string]CurrencyObject
var currencyObjectsList []CurrencyObject
func init(){
initializeCurrencyObjectsList()
// We initialize the currencyObjectsMap
currencyObjectsMap = make(map[string]CurrencyObject)
for _, currencyObject := range currencyObjectsList{
currencyCode := currencyObject.Code
currencyObjectsMap[currencyCode] = currencyObject
}
}
//Outputs:
// -string: Currency name
// -string: Currency symbol
// -error
func GetCurrencyInfoFromCurrencyCode(currencyCode string)(string, string, error){
currencyObjectsMap, err := GetCurrencyObjectsMap()
if (err != nil) { return "", "", err }
currencyObject, exists := currencyObjectsMap[currencyCode]
if (exists == false){
return "", "", errors.New("GetCurrencyInfoFromCurrencyCode called with invalid currency code: " + currencyCode)
}
currencyName := currencyObject.Name
currencySymbol := currencyObject.Symbol
return currencyName, currencySymbol, nil
}
//Output:
// -map[string]CurrencyObject: Currency Code -> Currency Object
// -error
func GetCurrencyObjectsMap()(map[string]CurrencyObject, error){
if (currencyObjectsMap == nil){
return nil, errors.New("GetCurrencyObjectsMap called when currencyObjectsMap is not initialized.")
}
return currencyObjectsMap, nil
}
func GetCurrencyObjectsList()([]CurrencyObject, error){
if (currencyObjectsList == nil){
return nil, errors.New("GetCurrencyObjectsList called when currencyObjectsList is not initialized.")
}
return currencyObjectsList, nil
}
func initializeCurrencyObjectsList(){
currencyObject_1 := CurrencyObject{
Name: "US Dollar",
Code: "USD",
Symbol: "$",
}
currencyObject_2 := CurrencyObject{
Name: "Canadian Dollar",
Code: "CAD",
Symbol: "CA$",
}
currencyObject_3 := CurrencyObject{
Name: "Euro",
Code: "EUR",
Symbol: "€",
}
currencyObject_4 := CurrencyObject{
Name: "United Arab Emirates Dirham",
Code: "AED",
Symbol: "AED",
}
currencyObject_5 := CurrencyObject{
Name: "Afghan Afghani",
Code: "AFN",
Symbol: "Af",
}
currencyObject_6 := CurrencyObject{
Name: "Albanian Lek",
Code: "ALL",
Symbol: "ALL",
}
currencyObject_7 := CurrencyObject{
Name: "Armenian Dram",
Code: "AMD",
Symbol: "AMD",
}
currencyObject_8 := CurrencyObject{
Name: "Argentine Peso",
Code: "ARS",
Symbol: "AR$",
}
currencyObject_9 := CurrencyObject{
Name: "Australian Dollar",
Code: "AUD",
Symbol: "AU$",
}
currencyObject_10 := CurrencyObject{
Name: "Azerbaijani Manat",
Code: "AZN",
Symbol: "₼",
}
currencyObject_11 := CurrencyObject{
Name: "Bosnia and Herzegovina Convertible Mark",
Code: "BAM",
Symbol: "KM",
}
currencyObject_12 := CurrencyObject{
Name: "Bangladeshi Taka",
Code: "BDT",
Symbol: "Tk",
}
currencyObject_13 := CurrencyObject{
Name: "Bulgarian Lev",
Code: "BGN",
Symbol: "BGN",
}
currencyObject_14 := CurrencyObject{
Name: "Bahraini Dinar",
Code: "BHD",
Symbol: "BD",
}
currencyObject_15 := CurrencyObject{
Name: "Burundian Franc",
Code: "BIF",
Symbol: "FBu",
}
currencyObject_16 := CurrencyObject{
Name: "Brunei Dollar",
Code: "BND",
Symbol: "BN$",
}
currencyObject_17 := CurrencyObject{
Name: "Bolivian Boliviano",
Code: "BOB",
Symbol: "Bs",
}
currencyObject_18 := CurrencyObject{
Name: "Brazilian Real",
Code: "BRL",
Symbol: "R$",
}
currencyObject_19 := CurrencyObject{
Name: "Botswanan Pula",
Code: "BWP",
Symbol: "BWP",
}
currencyObject_20 := CurrencyObject{
Name: "Belarusian Ruble",
Code: "BYN",
Symbol: "Br",
}
currencyObject_21 := CurrencyObject{
Name: "Belize Dollar",
Code: "BZD",
Symbol: "BZ$",
}
currencyObject_22 := CurrencyObject{
Name: "Congolese Franc",
Code: "CDF",
Symbol: "CDF",
}
currencyObject_23 := CurrencyObject{
Name: "Swiss Franc",
Code: "CHF",
Symbol: "CHF",
}
currencyObject_24 := CurrencyObject{
Name: "Chilean Peso",
Code: "CLP",
Symbol: "CL$",
}
currencyObject_25 := CurrencyObject{
Name: "Chinese Yuan",
Code: "CNY",
Symbol: "CN¥",
}
currencyObject_26 := CurrencyObject{
Name: "Colombian Peso",
Code: "COP",
Symbol: "CO$",
}
currencyObject_27 := CurrencyObject{
Name: "Costa Rican Colón",
Code: "CRC",
Symbol: "₡",
}
currencyObject_28 := CurrencyObject{
Name: "Cape Verdean Escudo",
Code: "CVE",
Symbol: "CV$",
}
currencyObject_29 := CurrencyObject{
Name: "Czech Republic Koruna",
Code: "CZK",
Symbol: "Kč",
}
currencyObject_30 := CurrencyObject{
Name: "Djiboutian Franc",
Code: "DJF",
Symbol: "Fr",
}
currencyObject_31 := CurrencyObject{
Name: "Danish Krone",
Code: "DKK",
Symbol: "Dkr",
}
currencyObject_32 := CurrencyObject{
Name: "Dominican Peso",
Code: "DOP",
Symbol: "RD$",
}
currencyObject_33 := CurrencyObject{
Name: "Algerian Dinar",
Code: "DZD",
Symbol: "DA",
}
currencyObject_34 := CurrencyObject{
Name: "Estonian Kroon",
Code: "EEK",
Symbol: "Ekr",
}
currencyObject_35 := CurrencyObject{
Name: "Egyptian Pound",
Code: "EGP",
Symbol: "EGP",
}
currencyObject_36 := CurrencyObject{
Name: "Eritrean Nakfa",
Code: "ERN",
Symbol: "Nfk",
}
currencyObject_37 := CurrencyObject{
Name: "Ethiopian Birr",
Code: "ETB",
Symbol: "Br",
}
currencyObject_38 := CurrencyObject{
Name: "British Pound Sterling",
Code: "GBP",
Symbol: "£",
}
currencyObject_39 := CurrencyObject{
Name: "Georgian Lari",
Code: "GEL",
Symbol: "GEL",
}
currencyObject_40 := CurrencyObject{
Name: "Ghanaian Cedi",
Code: "GHS",
Symbol: "GH₵",
}
currencyObject_41 := CurrencyObject{
Name: "Guinean Franc",
Code: "GNF",
Symbol: "FG",
}
currencyObject_42 := CurrencyObject{
Name: "Guatemalan Quetzal",
Code: "GTQ",
Symbol: "GTQ",
}
currencyObject_43 := CurrencyObject{
Name: "Hong Kong Dollar",
Code: "HKD",
Symbol: "HK$",
}
currencyObject_44 := CurrencyObject{
Name: "Honduran Lempira",
Code: "HNL",
Symbol: "HNL",
}
currencyObject_45 := CurrencyObject{
Name: "Croatian Kuna",
Code: "HRK",
Symbol: "kn",
}
currencyObject_46 := CurrencyObject{
Name: "Hungarian Forint",
Code: "HUF",
Symbol: "Ft",
}
currencyObject_47 := CurrencyObject{
Name: "Indonesian Rupiah",
Code: "IDR",
Symbol: "Rp",
}
currencyObject_48 := CurrencyObject{
Name: "Israeli New Sheqel",
Code: "ILS",
Symbol: "₪",
}
currencyObject_49 := CurrencyObject{
Name: "Indian Rupee",
Code: "INR",
Symbol: "Rs",
}
currencyObject_50 := CurrencyObject{
Name: "Iraqi Dinar",
Code: "IQD",
Symbol: "IQD",
}
currencyObject_51 := CurrencyObject{
Name: "Iranian Rial",
Code: "IRR",
Symbol: "IRR",
}
currencyObject_52 := CurrencyObject{
Name: "Icelandic Króna",
Code: "ISK",
Symbol: "Ikr",
}
currencyObject_53 := CurrencyObject{
Name: "Jamaican Dollar",
Code: "JMD",
Symbol: "J$",
}
currencyObject_54 := CurrencyObject{
Name: "Jordanian Dinar",
Code: "JOD",
Symbol: "JD",
}
currencyObject_55 := CurrencyObject{
Name: "Japanese Yen",
Code: "JPY",
Symbol: "¥",
}
currencyObject_56 := CurrencyObject{
Name: "Kenyan Shilling",
Code: "KES",
Symbol: "Ksh",
}
currencyObject_57 := CurrencyObject{
Name: "Cambodian Riel",
Code: "KHR",
Symbol: "KHR",
}
currencyObject_58 := CurrencyObject{
Name: "Comorian Franc",
Code: "KMF",
Symbol: "CF",
}
currencyObject_59 := CurrencyObject{
Name: "South Korean Won",
Code: "KRW",
Symbol: "₩",
}
currencyObject_60 := CurrencyObject{
Name: "Kuwaiti Dinar",
Code: "KWD",
Symbol: "KD",
}
currencyObject_61 := CurrencyObject{
Name: "Kazakhstani Tenge",
Code: "KZT",
Symbol: "KZT",
}
currencyObject_62 := CurrencyObject{
Name: "Lebanese Pound",
Code: "LBP",
Symbol: "LB£",
}
currencyObject_63 := CurrencyObject{
Name: "Sri Lankan Rupee",
Code: "LKR",
Symbol: "SLRs",
}
currencyObject_64 := CurrencyObject{
Name: "Lithuanian Litas",
Code: "LTL",
Symbol: "Lt",
}
currencyObject_65 := CurrencyObject{
Name: "Latvian Lats",
Code: "LVL",
Symbol: "Ls",
}
currencyObject_66 := CurrencyObject{
Name: "Libyan Dinar",
Code: "LYD",
Symbol: "LD",
}
currencyObject_67 := CurrencyObject{
Name: "Moroccan Dirham",
Code: "MAD",
Symbol: "MAD",
}
currencyObject_68 := CurrencyObject{
Name: "Moldovan Leu",
Code: "MDL",
Symbol: "MDL",
}
currencyObject_69 := CurrencyObject{
Name: "Malagasy Ariary",
Code: "MGA",
Symbol: "MGA",
}
currencyObject_70 := CurrencyObject{
Name: "Macedonian Denar",
Code: "MKD",
Symbol: "MKD",
}
currencyObject_71 := CurrencyObject{
Name: "Myanma Kyat",
Code: "MMK",
Symbol: "MMK",
}
currencyObject_72 := CurrencyObject{
Name: "Macanese Pataca",
Code: "MOP",
Symbol: "MOP$",
}
currencyObject_73 := CurrencyObject{
Name: "Mauritian Rupee",
Code: "MUR",
Symbol: "MURs",
}
currencyObject_74 := CurrencyObject{
Name: "Mexican Peso",
Code: "MXN",
Symbol: "MX$",
}
currencyObject_75 := CurrencyObject{
Name: "Malaysian Ringgit",
Code: "MYR",
Symbol: "RM",
}
currencyObject_76 := CurrencyObject{
Name: "Mozambican Metical",
Code: "MZN",
Symbol: "MTn",
}
currencyObject_77 := CurrencyObject{
Name: "Namibian Dollar",
Code: "NAD",
Symbol: "N$",
}
currencyObject_78 := CurrencyObject{
Name: "Nigerian Naira",
Code: "NGN",
Symbol: "₦",
}
currencyObject_79 := CurrencyObject{
Name: "Nicaraguan Córdoba",
Code: "NIO",
Symbol: "C$",
}
currencyObject_80 := CurrencyObject{
Name: "Norwegian Krone",
Code: "NOK",
Symbol: "Nkr",
}
currencyObject_81 := CurrencyObject{
Name: "Nepalese Rupee",
Code: "NPR",
Symbol: "NPRs",
}
currencyObject_82 := CurrencyObject{
Name: "New Zealand Dollar",
Code: "NZD",
Symbol: "NZ$",
}
currencyObject_83 := CurrencyObject{
Name: "Omani Rial",
Code: "OMR",
Symbol: "OMR",
}
currencyObject_84 := CurrencyObject{
Name: "Panamanian Balboa",
Code: "PAB",
Symbol: "B/",
}
currencyObject_85 := CurrencyObject{
Name: "Peruvian Nuevo Sol",
Code: "PEN",
Symbol: "S/",
}
currencyObject_86 := CurrencyObject{
Name: "Philippine Peso",
Code: "PHP",
Symbol: "₱",
}
currencyObject_87 := CurrencyObject{
Name: "Pakistani Rupee",
Code: "PKR",
Symbol: "PKRs",
}
currencyObject_88 := CurrencyObject{
Name: "Polish Zloty",
Code: "PLN",
Symbol: "zł",
}
currencyObject_89 := CurrencyObject{
Name: "Paraguayan Guarani",
Code: "PYG",
Symbol: "₲",
}
currencyObject_90 := CurrencyObject{
Name: "Qatari Rial",
Code: "QAR",
Symbol: "QR",
}
currencyObject_91 := CurrencyObject{
Name: "Romanian Leu",
Code: "RON",
Symbol: "RON",
}
currencyObject_92 := CurrencyObject{
Name: "Serbian Dinar",
Code: "RSD",
Symbol: "din",
}
currencyObject_93 := CurrencyObject{
Name: "Russian Ruble",
Code: "RUB",
Symbol: "RUB",
}
currencyObject_94 := CurrencyObject{
Name: "Rwandan Franc",
Code: "RWF",
Symbol: "RWF",
}
currencyObject_95 := CurrencyObject{
Name: "Saudi Riyal",
Code: "SAR",
Symbol: "SR",
}
currencyObject_96 := CurrencyObject{
Name: "Sudanese Pound",
Code: "SDG",
Symbol: "SDG",
}
currencyObject_97 := CurrencyObject{
Name: "Swedish Krona",
Code: "SEK",
Symbol: "Skr",
}
currencyObject_98 := CurrencyObject{
Name: "Singapore Dollar",
Code: "SGD",
Symbol: "S$",
}
currencyObject_99 := CurrencyObject{
Name: "Somali Shilling",
Code: "SOS",
Symbol: "Ssh",
}
currencyObject_100 := CurrencyObject{
Name: "Syrian Pound",
Code: "SYP",
Symbol: "SY£",
}
currencyObject_101 := CurrencyObject{
Name: "Thai Baht",
Code: "THB",
Symbol: "฿",
}
currencyObject_102 := CurrencyObject{
Name: "Tunisian Dinar",
Code: "TND",
Symbol: "DT",
}
currencyObject_103 := CurrencyObject{
Name: "Tongan Paʻanga",
Code: "TOP",
Symbol: "T$",
}
currencyObject_104 := CurrencyObject{
Name: "Turkish Lira",
Code: "TRY",
Symbol: "TL",
}
currencyObject_105 := CurrencyObject{
Name: "Trinidad and Tobago Dollar",
Code: "TTD",
Symbol: "TT$",
}
currencyObject_106 := CurrencyObject{
Name: "New Taiwan Dollar",
Code: "TWD",
Symbol: "NT$",
}
currencyObject_107 := CurrencyObject{
Name: "Tanzanian Shilling",
Code: "TZS",
Symbol: "TSh",
}
currencyObject_108 := CurrencyObject{
Name: "Ukrainian Hryvnia",
Code: "UAH",
Symbol: "₴",
}
currencyObject_109 := CurrencyObject{
Name: "Ugandan Shilling",
Code: "UGX",
Symbol: "USh",
}
currencyObject_110 := CurrencyObject{
Name: "Uruguayan Peso",
Code: "UYU",
Symbol: "$U",
}
currencyObject_111 := CurrencyObject{
Name: "Uzbekistan Som",
Code: "UZS",
Symbol: "UZS",
}
currencyObject_112 := CurrencyObject{
Name: "Venezuelan Bolívar",
Code: "VES",
Symbol: "Bs.S.",
}
currencyObject_113 := CurrencyObject{
Name: "Vietnamese Dong",
Code: "VND",
Symbol: "₫",
}
currencyObject_114 := CurrencyObject{
Name: "Central African CFA Franc",
Code: "XAF",
Symbol: "Fr",
}
currencyObject_115 := CurrencyObject{
Name: "West African CFA Franc",
Code: "XOF",
Symbol: "Fr",
}
currencyObject_116 := CurrencyObject{
Name: "Yemeni Rial",
Code: "YER",
Symbol: "YR",
}
currencyObject_117 := CurrencyObject{
Name: "South African Rand",
Code: "ZAR",
Symbol: "R",
}
currencyObject_118 := CurrencyObject{
Name: "Zambian Kwacha",
Code: "ZMK",
Symbol: "ZK",
}
currencyObject_119 := CurrencyObject{
Name: "Zimbabwean Dollar",
Code: "ZWL",
Symbol: "ZWL$",
}
currencyObject_120 := CurrencyObject{
Name: "Ethereum",
Code: "ETH",
Symbol: "ETH",
}
currencyObject_121 := CurrencyObject{
Name: "Cardano",
Code: "ADA",
Symbol: "ADA",
}
currencyObjectsList = []CurrencyObject{currencyObject_1, currencyObject_2, currencyObject_3, currencyObject_4, currencyObject_5, currencyObject_6, currencyObject_7, currencyObject_8, currencyObject_9, currencyObject_10, currencyObject_11, currencyObject_12, currencyObject_13, currencyObject_14, currencyObject_15, currencyObject_16, currencyObject_17, currencyObject_18, currencyObject_19, currencyObject_20, currencyObject_21, currencyObject_22, currencyObject_23, currencyObject_24, currencyObject_25, currencyObject_26, currencyObject_27, currencyObject_28, currencyObject_29, currencyObject_30, currencyObject_31, currencyObject_32, currencyObject_33, currencyObject_34, currencyObject_35, currencyObject_36, currencyObject_37, currencyObject_38, currencyObject_39, currencyObject_40, currencyObject_41, currencyObject_42, currencyObject_43, currencyObject_44, currencyObject_45, currencyObject_46, currencyObject_47, currencyObject_48, currencyObject_49, currencyObject_50, currencyObject_51, currencyObject_52, currencyObject_53, currencyObject_54, currencyObject_55, currencyObject_56, currencyObject_57, currencyObject_58, currencyObject_59, currencyObject_60, currencyObject_61, currencyObject_62, currencyObject_63, currencyObject_64, currencyObject_65, currencyObject_66, currencyObject_67, currencyObject_68, currencyObject_69, currencyObject_70, currencyObject_71, currencyObject_72, currencyObject_73, currencyObject_74, currencyObject_75, currencyObject_76, currencyObject_77, currencyObject_78, currencyObject_79, currencyObject_80, currencyObject_81, currencyObject_82, currencyObject_83, currencyObject_84, currencyObject_85, currencyObject_86, currencyObject_87, currencyObject_88, currencyObject_89, currencyObject_90, currencyObject_91, currencyObject_92, currencyObject_93, currencyObject_94, currencyObject_95, currencyObject_96, currencyObject_97, currencyObject_98, currencyObject_99, currencyObject_100, currencyObject_101, currencyObject_102, currencyObject_103, currencyObject_104, currencyObject_105, currencyObject_106, currencyObject_107, currencyObject_108, currencyObject_109, currencyObject_110, currencyObject_111, currencyObject_112, currencyObject_113, currencyObject_114, currencyObject_115, currencyObject_116, currencyObject_117, currencyObject_118, currencyObject_119, currencyObject_120, currencyObject_121}
}