Skip to content
This repository was archived by the owner on Jul 2, 2018. It is now read-only.

Commit 621d6be

Browse files
committed
Merge branch 'release/1.6.0'
2 parents 595600e + 4ce267d commit 621d6be

File tree

11 files changed

+103
-82
lines changed

11 files changed

+103
-82
lines changed

.jazzy.yaml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
author_name: Daniel Thorpe
22
author_url: http://danthorpe.me
33
module_name: Money
4-
module_version: 1.5.1
4+
module_version: 1.6.0
55
github_url: https://github.com/danthorpe/Money
66
readme: README.md
77
podspec: Money.podspec

CHANGELOG.md

+4
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
# 1.6.0
2+
1. [[MNY-39](https://github.com/danthorpe/Money/pull/39)]: Updates the spelling of CocoaPods, thanks [https://github.com/ReadmeCritic](@ReadmeCritic)!
3+
2. [[MNY-34](https://github.com/danthorpe/Money/pull/34)]: Refactors `CurrencyType` to remove the formatter property, and include a default `CurrencyStyle`. This update makes it a lot easier to make custom currency types, and overall improves or fixes bugs with the ISO currency types. If you have custom currencies you may need to perform some slight refactoring, but it shouldn’t be too complex.
4+
15
# 1.5.1
26
Cleans up a few issues related to updating to the latest Carthage, and the example project.
37

Money.podspec

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Pod::Spec.new do |s|
22
s.name = "Money"
3-
s.version = "1.5.1"
3+
s.version = "1.6.0"
44
s.summary = "Swift types for working with Money."
55
s.description = <<-DESC
66
@@ -15,7 +15,7 @@ Pod::Spec.new do |s|
1515
s.author = { "Daniel Thorpe" => "@danthorpe" }
1616
s.source = { :git => "https://github.com/danthorpe/Money.git", :tag => s.version.to_s }
1717
s.module_name = 'Money'
18-
s.documentation_url = 'http://docs.danthorpe.me/money/1.5.1/index.html'
18+
s.documentation_url = 'http://docs.danthorpe.me/money/1.6.0/index.html'
1919
s.social_media_url = 'https://twitter.com/danthorpe'
2020
s.requires_arc = true
2121
s.ios.deployment_target = '8.0'

Money.xcodeproj/project.pbxproj

+15-19
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,10 @@
3838
6557F4C91BEB7F3D003CD2BF /* ValueCoding.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6557F4C81BEB7F3D003CD2BF /* ValueCoding.framework */; };
3939
6557F4CB1BEB7F46003CD2BF /* ValueCoding.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6557F4CA1BEB7F46003CD2BF /* ValueCoding.framework */; };
4040
6557F4CD1BEB7F51003CD2BF /* ValueCoding.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6557F4CC1BEB7F51003CD2BF /* ValueCoding.framework */; };
41+
65882AFB1C6CB02C0056E00B /* Bitcoin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65882AFA1C6CAF9A0056E00B /* Bitcoin.swift */; };
42+
65882AFC1C6CB02D0056E00B /* Bitcoin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65882AFA1C6CAF9A0056E00B /* Bitcoin.swift */; };
43+
65882AFD1C6CB02D0056E00B /* Bitcoin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65882AFA1C6CAF9A0056E00B /* Bitcoin.swift */; };
44+
65882AFE1C6CB02E0056E00B /* Bitcoin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65882AFA1C6CAF9A0056E00B /* Bitcoin.swift */; };
4145
65B92ADE1BE0E4A700F82024 /* Money.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 65B92AD31BE0E4A700F82024 /* Money.framework */; };
4246
65B92B071BE0E4D800F82024 /* Money.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 65B92AFD1BE0E4D800F82024 /* Money.framework */; };
4347
65B92B231BE0E4E700F82024 /* Money.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 65B92B191BE0E4E700F82024 /* Money.framework */; };
@@ -86,10 +90,6 @@
8690
65DEE34E1BFA0F370043A718 /* NSDecimalNumberExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65DEE32D1BFA0F370043A718 /* NSDecimalNumberExtensions.swift */; };
8791
65DEE34F1BFA0F370043A718 /* NSDecimalNumberExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65DEE32D1BFA0F370043A718 /* NSDecimalNumberExtensions.swift */; };
8892
65DEE3501BFA0F370043A718 /* NSDecimalNumberExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65DEE32D1BFA0F370043A718 /* NSDecimalNumberExtensions.swift */; };
89-
65DEE3511BFA0F370043A718 /* Bitcoin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65DEE32F1BFA0F370043A718 /* Bitcoin.swift */; };
90-
65DEE3521BFA0F370043A718 /* Bitcoin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65DEE32F1BFA0F370043A718 /* Bitcoin.swift */; };
91-
65DEE3531BFA0F370043A718 /* Bitcoin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65DEE32F1BFA0F370043A718 /* Bitcoin.swift */; };
92-
65DEE3541BFA0F370043A718 /* Bitcoin.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65DEE32F1BFA0F370043A718 /* Bitcoin.swift */; };
9393
65DEE3611BFA0F370043A718 /* Money.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65DEE3331BFA0F370043A718 /* Money.swift */; };
9494
65DEE3621BFA0F370043A718 /* Money.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65DEE3331BFA0F370043A718 /* Money.swift */; };
9595
65DEE3631BFA0F370043A718 /* Money.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65DEE3331BFA0F370043A718 /* Money.swift */; };
@@ -161,6 +161,7 @@
161161
6557F4C81BEB7F3D003CD2BF /* ValueCoding.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ValueCoding.framework; path = Carthage/Build/watchOS/ValueCoding.framework; sourceTree = "<group>"; };
162162
6557F4CA1BEB7F46003CD2BF /* ValueCoding.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ValueCoding.framework; path = Carthage/Build/tvOS/ValueCoding.framework; sourceTree = "<group>"; };
163163
6557F4CC1BEB7F51003CD2BF /* ValueCoding.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ValueCoding.framework; path = Carthage/Build/Mac/ValueCoding.framework; sourceTree = "<group>"; };
164+
65882AFA1C6CAF9A0056E00B /* Bitcoin.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Bitcoin.swift; sourceTree = "<group>"; };
164165
65A876D61BE6491800E26F22 /* Generate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = Generate.swift; path = "Supporting Files/Generate.swift"; sourceTree = SOURCE_ROOT; };
165166
65B92AD31BE0E4A700F82024 /* Money.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Money.framework; sourceTree = BUILT_PRODUCTS_DIR; };
166167
65B92ADD1BE0E4A700F82024 /* Money-iOSTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "Money-iOSTests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; };
@@ -186,7 +187,6 @@
186187
65DEE32B1BFA0F370043A718 /* DecimalNumberType.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DecimalNumberType.swift; sourceTree = "<group>"; };
187188
65DEE32C1BFA0F370043A718 /* NSDecimalExtensions.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NSDecimalExtensions.swift; sourceTree = "<group>"; };
188189
65DEE32D1BFA0F370043A718 /* NSDecimalNumberExtensions.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NSDecimalNumberExtensions.swift; sourceTree = "<group>"; };
189-
65DEE32F1BFA0F370043A718 /* Bitcoin.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Bitcoin.swift; sourceTree = "<group>"; };
190190
65DEE3331BFA0F370043A718 /* Money.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Money.swift; sourceTree = "<group>"; };
191191
65DEE3341BFA0F370043A718 /* Support.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Support.swift; sourceTree = "<group>"; };
192192
/* End PBXFileReference section */
@@ -353,12 +353,12 @@
353353
isa = PBXGroup;
354354
children = (
355355
65DEE3271BFA0F370043A718 /* Autogenerated.swift */,
356+
65882AFA1C6CAF9A0056E00B /* Bitcoin.swift */,
356357
65DEE3281BFA0F370043A718 /* Currency.swift */,
357358
65579FB51C0228EB00C3F8C7 /* Locale.swift */,
358359
65DEE3331BFA0F370043A718 /* Money.swift */,
359360
65DEE3341BFA0F370043A718 /* Support.swift */,
360361
65DEE3291BFA0F370043A718 /* Decimal */,
361-
65DEE32E1BFA0F370043A718 /* FX */,
362362
);
363363
path = Shared;
364364
sourceTree = "<group>";
@@ -374,14 +374,6 @@
374374
path = Decimal;
375375
sourceTree = "<group>";
376376
};
377-
65DEE32E1BFA0F370043A718 /* FX */ = {
378-
isa = PBXGroup;
379-
children = (
380-
65DEE32F1BFA0F370043A718 /* Bitcoin.swift */,
381-
);
382-
path = FX;
383-
sourceTree = "<group>";
384-
};
385377
/* End PBXGroup section */
386378

387379
/* Begin PBXHeadersBuildPhase section */
@@ -559,7 +551,7 @@
559551
65B92AC81BE0E46C00F82024 /* Project object */ = {
560552
isa = PBXProject;
561553
attributes = {
562-
LastSwiftUpdateCheck = 0710;
554+
LastSwiftUpdateCheck = 0720;
563555
LastUpgradeCheck = 0720;
564556
TargetAttributes = {
565557
65A876D81BE65FAF00E26F22 = {
@@ -741,9 +733,9 @@
741733
65DEE34D1BFA0F370043A718 /* NSDecimalNumberExtensions.swift in Sources */,
742734
65DEE3411BFA0F370043A718 /* Decimal.swift in Sources */,
743735
65DEE33D1BFA0F370043A718 /* Currency.swift in Sources */,
736+
65882AFB1C6CB02C0056E00B /* Bitcoin.swift in Sources */,
744737
65DEE3611BFA0F370043A718 /* Money.swift in Sources */,
745738
65DEE3391BFA0F370043A718 /* Autogenerated.swift in Sources */,
746-
65DEE3511BFA0F370043A718 /* Bitcoin.swift in Sources */,
747739
65DEE3351BFA0F370043A718 /* ApplePay.swift in Sources */,
748740
);
749741
runOnlyForDeploymentPostprocessing = 0;
@@ -774,10 +766,10 @@
774766
65DEE34E1BFA0F370043A718 /* NSDecimalNumberExtensions.swift in Sources */,
775767
65DEE3421BFA0F370043A718 /* Decimal.swift in Sources */,
776768
65DEE33E1BFA0F370043A718 /* Currency.swift in Sources */,
769+
65882AFC1C6CB02D0056E00B /* Bitcoin.swift in Sources */,
777770
65DEE3621BFA0F370043A718 /* Money.swift in Sources */,
778771
65579FB71C0228EB00C3F8C7 /* Locale.swift in Sources */,
779772
65DEE33A1BFA0F370043A718 /* Autogenerated.swift in Sources */,
780-
65DEE3521BFA0F370043A718 /* Bitcoin.swift in Sources */,
781773
);
782774
runOnlyForDeploymentPostprocessing = 0;
783775
};
@@ -791,10 +783,10 @@
791783
65DEE34F1BFA0F370043A718 /* NSDecimalNumberExtensions.swift in Sources */,
792784
65DEE3431BFA0F370043A718 /* Decimal.swift in Sources */,
793785
65DEE33F1BFA0F370043A718 /* Currency.swift in Sources */,
786+
65882AFD1C6CB02D0056E00B /* Bitcoin.swift in Sources */,
794787
65DEE3631BFA0F370043A718 /* Money.swift in Sources */,
795788
65579FB81C0228EB00C3F8C7 /* Locale.swift in Sources */,
796789
65DEE33B1BFA0F370043A718 /* Autogenerated.swift in Sources */,
797-
65DEE3531BFA0F370043A718 /* Bitcoin.swift in Sources */,
798790
);
799791
runOnlyForDeploymentPostprocessing = 0;
800792
};
@@ -823,10 +815,10 @@
823815
65DEE3501BFA0F370043A718 /* NSDecimalNumberExtensions.swift in Sources */,
824816
65DEE3441BFA0F370043A718 /* Decimal.swift in Sources */,
825817
65DEE3401BFA0F370043A718 /* Currency.swift in Sources */,
818+
65882AFE1C6CB02E0056E00B /* Bitcoin.swift in Sources */,
826819
65DEE3641BFA0F370043A718 /* Money.swift in Sources */,
827820
65579FB91C0228EB00C3F8C7 /* Locale.swift in Sources */,
828821
65DEE33C1BFA0F370043A718 /* Autogenerated.swift in Sources */,
829-
65DEE3541BFA0F370043A718 /* Bitcoin.swift in Sources */,
830822
);
831823
runOnlyForDeploymentPostprocessing = 0;
832824
};
@@ -889,13 +881,17 @@
889881
65A876DA1BE65FAF00E26F22 /* Debug */ = {
890882
isa = XCBuildConfiguration;
891883
buildSettings = {
884+
CLANG_ENABLE_MODULES = YES;
885+
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks";
892886
PRODUCT_NAME = "$(TARGET_NAME)";
893887
};
894888
name = Debug;
895889
};
896890
65A876DB1BE65FAF00E26F22 /* Release */ = {
897891
isa = XCBuildConfiguration;
898892
buildSettings = {
893+
CLANG_ENABLE_MODULES = YES;
894+
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks";
899895
PRODUCT_NAME = "$(TARGET_NAME)";
900896
};
901897
name = Release;

Money/Shared/FX/Bitcoin.swift Money/Shared/Bitcoin.swift

+23-13
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,20 @@ import Foundation
3737
*/
3838
public protocol BitcoinCurrencyType: CryptoCurrencyType { }
3939

40+
public extension BitcoinCurrencyType {
41+
42+
/// The smallest unit of Bitcoin is the Satoshi
43+
/// - see: https://en.bitcoin.it/wiki/Satoshi_(unit)
44+
static var scale: Int {
45+
return 8
46+
}
47+
48+
/// - returns: the currency symbol
49+
static var symbol: String? {
50+
return "Ƀ"
51+
}
52+
}
53+
4054
public extension Currency {
4155

4256
/**
@@ -55,18 +69,14 @@ public extension Currency {
5569
/// - returns: the proposed ISO 4217 currency code
5670
public static let code = "XBT"
5771

58-
/// The smallest unit of Bitcoin is the Satoshi
59-
/// - see: https://en.bitcoin.it/wiki/Satoshi_(unit)
60-
public static let scale: Int = 8
61-
6272
/// - returns: a configured NSNumberFormatter
63-
public static let formatter: NSNumberFormatter = {
64-
let fmtr = NSNumberFormatter()
65-
fmtr.numberStyle = .CurrencyStyle
66-
fmtr.maximumFractionDigits = scale
67-
fmtr.currencySymbol = "Ƀ"
68-
return fmtr
69-
}()
73+
// public static let formatter: NSNumberFormatter = {
74+
// let fmtr = NSNumberFormatter()
75+
// fmtr.numberStyle = .CurrencyStyle
76+
// fmtr.maximumFractionDigits = scale
77+
// fmtr.currencySymbol = "Ƀ"
78+
// return fmtr
79+
// }()
7080
}
7181

7282
/**
@@ -76,8 +86,8 @@ public extension Currency {
7686
*/
7787
struct BTC: BitcoinCurrencyType {
7888
public static let code = "BTC"
79-
public static let scale = Currency.XBT.scale
80-
public static let formatter = Currency.XBT.formatter
89+
// public static let scale = Currency.XBT.scale
90+
// public static let formatter = Currency.XBT.formatter
8191
}
8292
}
8393

Money/Shared/Currency.swift

+51-38
Original file line numberDiff line numberDiff line change
@@ -51,20 +51,20 @@ public protocol CurrencyType: DecimalNumberBehaviorType {
5151
/// The currency symbol
5252
static var symbol: String? { get }
5353

54-
/// A number formatter for the currency
55-
static var formatter: NSNumberFormatter { get }
56-
54+
/// Default formatting style
55+
static var defaultFormattingStyle: NSNumberFormatterStyle { get }
56+
5757
static func formattedWithStyle(style: NSNumberFormatterStyle, forLocaleId localeId: String) -> NSDecimalNumber -> String
5858

5959
static func formattedWithStyle(style: NSNumberFormatterStyle, forLocale locale: Locale) -> NSDecimalNumber -> String
6060
}
6161

6262
public extension CurrencyType {
6363

64-
static var symbol: String? {
65-
return formatter.currencySymbol
64+
static var defaultFormattingStyle: NSNumberFormatterStyle {
65+
return .CurrencyStyle
6666
}
67-
67+
6868
/**
6969
Default implementation of the `NSDecimalNumberBehaviors` for
7070
the currency. This uses `NSRoundingMode.RoundBankers` and the
@@ -87,22 +87,15 @@ public extension CurrencyType {
8787
internal extension CurrencyType {
8888

8989
static func formattedWithStyle(style: NSNumberFormatterStyle, forLocale locale: NSLocale) -> NSDecimalNumber -> String {
90-
__formatter.reset()
91-
__formatter.locale = locale
92-
__formatter.numberStyle = style
93-
switch locale.currencyCode {
94-
case .Some(let wrapped) where wrapped == code:
95-
break
96-
default:
97-
__formatter.currencyCode = code
98-
__formatter.currencySymbol = formatter.currencySymbol
99-
__formatter.internationalCurrencySymbol = formatter.internationalCurrencySymbol
100-
__formatter.currencyGroupingSeparator = formatter.currencyGroupingSeparator
101-
__formatter.currencyDecimalSeparator = formatter.currencyDecimalSeparator
102-
__formatter.maximumFractionDigits = formatter.maximumFractionDigits
103-
104-
}
105-
return { __formatter.stringFromNumber($0)! }
90+
91+
let formatter = NSNumberFormatter()
92+
formatter.locale = locale
93+
formatter.numberStyle = style
94+
formatter.maximumFractionDigits = scale
95+
formatter.currencySymbol = symbol ?? locale.currencySymbol
96+
formatter.currencyCode = code
97+
98+
return { formatter.stringFromNumber($0)! }
10699
}
107100
}
108101

@@ -159,8 +152,12 @@ public protocol ISOCurrencyType: CurrencyType {
159152
/// - returns: the currency code
160153
var _code: String { get }
161154

162-
/// - returns: a number formatter for the currency in the current locale.
163-
var _formatter: NSNumberFormatter { get }
155+
/// - returns: the currency scale
156+
var _scale: Int { get }
157+
158+
/// - returns: the currency symbol
159+
var _symbol: String? { get }
160+
164161
}
165162

166163
public extension ISOCurrencyType {
@@ -172,12 +169,12 @@ public extension ISOCurrencyType {
172169

173170
/// The currency scale
174171
static var scale: Int {
175-
return formatter.maximumFractionDigits
172+
return sharedInstance._scale
176173
}
177174

178-
/// Returns a formatter from the shared instance
179-
static var formatter: NSNumberFormatter {
180-
return sharedInstance._formatter
175+
/// The currency symbol
176+
static var symbol: String? {
177+
return sharedInstance._symbol
181178
}
182179

183180
/**
@@ -221,22 +218,38 @@ public struct Currency {
221218
public class Base {
222219

223220
public let _code: String
221+
public let _scale: Int
222+
public let _symbol: String?
223+
224+
init(code: String, scale: Int, symbol: String?) {
225+
_code = code
226+
_scale = scale
227+
_symbol = symbol
228+
}
224229

225-
public lazy var _formatter: NSNumberFormatter = {
230+
convenience init(code: String) {
231+
let locale = NSLocale(localeIdentifier: NSLocale.canonicalLocaleIdentifierFromString(NSLocale.localeIdentifierFromComponents([NSLocaleCurrencyCode: code])))
232+
let symbol = locale.currencySymbol!
233+
226234
let fmtr = NSNumberFormatter()
227-
let locale = NSLocale(localeIdentifier: NSLocale.canonicalLocaleIdentifierFromString(NSLocale.localeIdentifierFromComponents([NSLocaleCurrencyCode: self._code])))
235+
fmtr.locale = locale
228236
fmtr.numberStyle = .CurrencyStyle
229-
fmtr.currencyCode = self._code
237+
fmtr.currencyCode = code
230238
fmtr.currencySymbol = locale.currencySymbol
231-
return fmtr
232-
}()
233-
234-
init(code: String) {
235-
self._code = code
239+
240+
let scale = fmtr.maximumFractionDigits
241+
self.init(code: code, scale: scale, symbol: symbol)
236242
}
237-
243+
238244
convenience init(locale: NSLocale) {
239-
self.init(code: locale.objectForKey(NSLocaleCurrencyCode) as! String)
245+
let code = locale.currencyCode!
246+
let symbol = locale.currencySymbol
247+
248+
let fmtr = NSNumberFormatter()
249+
fmtr.locale = locale
250+
251+
let scale = fmtr.maximumFractionDigits
252+
self.init(code: code, scale: scale, symbol: symbol)
240253
}
241254
}
242255

Money/Shared/Locale.swift

-2
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,6 @@
88

99
import Foundation
1010

11-
internal let __formatter = NSNumberFormatter()
12-
1311
/**
1412
LanguageType provides an interface to retrieve
1513
a language identifier.

Money/Shared/Money.swift

+1-1
Original file line numberDiff line numberDiff line change
@@ -296,7 +296,7 @@ extension _Money: CustomStringConvertible {
296296
NSNumberFormatterStyle.CurrencyStyle.
297297
*/
298298
public var description: String {
299-
return formattedWithStyle(.CurrencyStyle)
299+
return formattedWithStyle(C.defaultFormattingStyle)
300300
}
301301
}
302302

README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
[![Build status](https://badge.buildkite.com/265eb9670a2ef6b73eebf37769a8455c402509f71f09c4f51e.svg?branch=development)](https://buildkite.com/blindingskies/money?branch=development)
44
[![codecov.io](https://codecov.io/github/danthorpe/Money/coverage.svg?branch=development&token=gI70muNOjA)](https://codecov.io/github/danthorpe/Money?branch=development)
5-
[![Cocoapods Compatible](https://img.shields.io/cocoapods/v/Money.svg)](https://img.shields.io/cocoapods/v/Money.svg)
5+
[![CocoaPods Compatible](https://img.shields.io/cocoapods/v/Money.svg)](https://img.shields.io/cocoapods/v/Money.svg)
66
[![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage)
77
[![Platform](https://img.shields.io/cocoapods/p/Money.svg?style=flat)](http://cocoadocs.org/docsets/Money)
88

0 commit comments

Comments
 (0)