From 777aa4069566eb08098b27bd3da192547e50a13a Mon Sep 17 00:00:00 2001 From: tobias <thinkdifferent055@gmail.com> Date: Sun, 22 Aug 2021 10:46:43 +0200 Subject: [PATCH] Add float round extension --- AppleLibs.xcodeproj/project.pbxproj | 4 ++++ AppleLibs/Utils/Numbers/Float+Rounded.swift | 17 +++++++++++++++++ 2 files changed, 21 insertions(+) create mode 100644 AppleLibs/Utils/Numbers/Float+Rounded.swift diff --git a/AppleLibs.xcodeproj/project.pbxproj b/AppleLibs.xcodeproj/project.pbxproj index 6da0fc9..7211c1b 100644 --- a/AppleLibs.xcodeproj/project.pbxproj +++ b/AppleLibs.xcodeproj/project.pbxproj @@ -30,6 +30,7 @@ F6A251A7260B670000132DEC /* AppleLibs.h in Headers */ = {isa = PBXBuildFile; fileRef = F6A25199260B66FF00132DEC /* AppleLibs.h */; settings = {ATTRIBUTES = (Public, ); }; }; F6A251BA260B697300132DEC /* Double+Rounded.swift in Sources */ = {isa = PBXBuildFile; fileRef = F6A251B9260B697300132DEC /* Double+Rounded.swift */; }; F6A251BE260B699100132DEC /* String+Html.swift in Sources */ = {isa = PBXBuildFile; fileRef = F6A251BD260B699100132DEC /* String+Html.swift */; }; + F6CD575026D246470051B38E /* Float+Rounded.swift in Sources */ = {isa = PBXBuildFile; fileRef = F6CD574F26D246470051B38E /* Float+Rounded.swift */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -69,6 +70,7 @@ F6A251B2260B680F00132DEC /* Package.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Package.swift; sourceTree = "<group>"; }; F6A251B9260B697300132DEC /* Double+Rounded.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Double+Rounded.swift"; sourceTree = "<group>"; }; F6A251BD260B699100132DEC /* String+Html.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "String+Html.swift"; sourceTree = "<group>"; }; + F6CD574F26D246470051B38E /* Float+Rounded.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Float+Rounded.swift"; sourceTree = "<group>"; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -206,6 +208,7 @@ isa = PBXGroup; children = ( F6A251B9260B697300132DEC /* Double+Rounded.swift */, + F6CD574F26D246470051B38E /* Float+Rounded.swift */, F623A66B2635B57500F50371 /* NumberFormatter.swift */, ); path = Numbers; @@ -338,6 +341,7 @@ F623A6562635B34100F50371 /* Sequence+Extended.swift in Sources */, F68C2D422616482A00042967 /* IsoDateFormatter.swift in Sources */, F623A66C2635B57500F50371 /* NumberFormatter.swift in Sources */, + F6CD575026D246470051B38E /* Float+Rounded.swift in Sources */, F6A251BE260B699100132DEC /* String+Html.swift in Sources */, F673A9952635EF510017AD37 /* HttpStatusCode.swift in Sources */, F6450F6D26A0CEA200076347 /* UIColor+Hex.swift in Sources */, diff --git a/AppleLibs/Utils/Numbers/Float+Rounded.swift b/AppleLibs/Utils/Numbers/Float+Rounded.swift new file mode 100644 index 0000000..9f1acf7 --- /dev/null +++ b/AppleLibs/Utils/Numbers/Float+Rounded.swift @@ -0,0 +1,17 @@ +// +// Float+Rounded.swift +// AppleLibs +// +// Created by Tobias on 22.08.21. +// + +import Foundation + +public extension Float { + func rounded(rule: NSDecimalNumber.RoundingMode, scale: Int) -> Float { + var result: Decimal = 0 + var decimalSelf = NSNumber(value: self).decimalValue + NSDecimalRound(&result, &decimalSelf, scale, rule) + return (result as NSNumber).floatValue + } +} -- GitLab