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

Commit 6a21daa

Browse files
Adlai Hollerappleguy
authored andcommitted
[ASInternalHelpers] Use type-generic math (#2006)
1 parent 5ff5a27 commit 6a21daa

2 files changed

Lines changed: 13 additions & 9 deletions

File tree

AsyncDisplayKit.xcodeproj/project.pbxproj

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,7 @@
133133
34EFC75B1B701BAF00AD841F /* ASDimension.h in Headers */ = {isa = PBXBuildFile; fileRef = ACF6ED071B17843500DA7C62 /* ASDimension.h */; settings = {ATTRIBUTES = (Public, ); }; };
134134
34EFC75C1B701BD200AD841F /* ASDimension.mm in Sources */ = {isa = PBXBuildFile; fileRef = ACF6ED081B17843500DA7C62 /* ASDimension.mm */; };
135135
34EFC75D1B701BE900AD841F /* ASInternalHelpers.h in Headers */ = {isa = PBXBuildFile; fileRef = ACF6ED431B17847A00DA7C62 /* ASInternalHelpers.h */; };
136-
34EFC75E1B701BF000AD841F /* ASInternalHelpers.mm in Sources */ = {isa = PBXBuildFile; fileRef = ACF6ED441B17847A00DA7C62 /* ASInternalHelpers.mm */; };
136+
34EFC75E1B701BF000AD841F /* ASInternalHelpers.m in Sources */ = {isa = PBXBuildFile; fileRef = ACF6ED441B17847A00DA7C62 /* ASInternalHelpers.m */; };
137137
34EFC75F1B701C8600AD841F /* ASInsetLayoutSpec.h in Headers */ = {isa = PBXBuildFile; fileRef = ACF6ED091B17843500DA7C62 /* ASInsetLayoutSpec.h */; settings = {ATTRIBUTES = (Public, ); }; };
138138
34EFC7601B701C8B00AD841F /* ASInsetLayoutSpec.mm in Sources */ = {isa = PBXBuildFile; fileRef = ACF6ED0A1B17843500DA7C62 /* ASInsetLayoutSpec.mm */; };
139139
34EFC7611B701C9C00AD841F /* ASBackgroundLayoutSpec.h in Headers */ = {isa = PBXBuildFile; fileRef = ACF6ED011B17843500DA7C62 /* ASBackgroundLayoutSpec.h */; settings = {ATTRIBUTES = (Public, ); }; };
@@ -298,7 +298,7 @@
298298
ACF6ED2E1B17843500DA7C62 /* ASRatioLayoutSpec.mm in Sources */ = {isa = PBXBuildFile; fileRef = ACF6ED151B17843500DA7C62 /* ASRatioLayoutSpec.mm */; };
299299
ACF6ED301B17843500DA7C62 /* ASStackLayoutSpec.mm in Sources */ = {isa = PBXBuildFile; fileRef = ACF6ED171B17843500DA7C62 /* ASStackLayoutSpec.mm */; };
300300
ACF6ED321B17843500DA7C62 /* ASStaticLayoutSpec.mm in Sources */ = {isa = PBXBuildFile; fileRef = ACF6ED191B17843500DA7C62 /* ASStaticLayoutSpec.mm */; };
301-
ACF6ED4C1B17847A00DA7C62 /* ASInternalHelpers.mm in Sources */ = {isa = PBXBuildFile; fileRef = ACF6ED441B17847A00DA7C62 /* ASInternalHelpers.mm */; };
301+
ACF6ED4C1B17847A00DA7C62 /* ASInternalHelpers.m in Sources */ = {isa = PBXBuildFile; fileRef = ACF6ED441B17847A00DA7C62 /* ASInternalHelpers.m */; };
302302
ACF6ED501B17847A00DA7C62 /* ASStackPositionedLayout.mm in Sources */ = {isa = PBXBuildFile; fileRef = ACF6ED481B17847A00DA7C62 /* ASStackPositionedLayout.mm */; };
303303
ACF6ED521B17847A00DA7C62 /* ASStackUnpositionedLayout.mm in Sources */ = {isa = PBXBuildFile; fileRef = ACF6ED4A1B17847A00DA7C62 /* ASStackUnpositionedLayout.mm */; };
304304
ACF6ED5C1B178DC700DA7C62 /* ASCenterLayoutSpecSnapshotTests.mm in Sources */ = {isa = PBXBuildFile; fileRef = ACF6ED531B178DC700DA7C62 /* ASCenterLayoutSpecSnapshotTests.mm */; };
@@ -1052,7 +1052,7 @@
10521052
ACF6ED181B17843500DA7C62 /* ASStaticLayoutSpec.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ASStaticLayoutSpec.h; path = AsyncDisplayKit/Layout/ASStaticLayoutSpec.h; sourceTree = "<group>"; };
10531053
ACF6ED191B17843500DA7C62 /* ASStaticLayoutSpec.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; lineEnding = 0; name = ASStaticLayoutSpec.mm; path = AsyncDisplayKit/Layout/ASStaticLayoutSpec.mm; sourceTree = "<group>"; };
10541054
ACF6ED431B17847A00DA7C62 /* ASInternalHelpers.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ASInternalHelpers.h; sourceTree = "<group>"; };
1055-
ACF6ED441B17847A00DA7C62 /* ASInternalHelpers.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ASInternalHelpers.mm; sourceTree = "<group>"; };
1055+
ACF6ED441B17847A00DA7C62 /* ASInternalHelpers.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ASInternalHelpers.m; sourceTree = "<group>"; };
10561056
ACF6ED451B17847A00DA7C62 /* ASLayoutSpecUtilities.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ASLayoutSpecUtilities.h; sourceTree = "<group>"; };
10571057
ACF6ED461B17847A00DA7C62 /* ASStackLayoutSpecUtilities.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ASStackLayoutSpecUtilities.h; sourceTree = "<group>"; };
10581058
ACF6ED471B17847A00DA7C62 /* ASStackPositionedLayout.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ASStackPositionedLayout.h; sourceTree = "<group>"; };
@@ -1498,7 +1498,7 @@
14981498
058D0A0E195D050800B7D73C /* ASImageNode+CGExtras.m */,
14991499
68B8A4DB1CBD911D007E4543 /* ASImageNode+AnimatedImagePrivate.h */,
15001500
ACF6ED431B17847A00DA7C62 /* ASInternalHelpers.h */,
1501-
ACF6ED441B17847A00DA7C62 /* ASInternalHelpers.mm */,
1501+
ACF6ED441B17847A00DA7C62 /* ASInternalHelpers.m */,
15021502
ACF6ED451B17847A00DA7C62 /* ASLayoutSpecUtilities.h */,
15031503
0442850B1BAA64EC00D16268 /* ASMultidimensionalArrayUtils.h */,
15041504
0442850C1BAA64EC00D16268 /* ASMultidimensionalArrayUtils.mm */,
@@ -2100,7 +2100,7 @@
21002100
058D0A16195D050800B7D73C /* ASImageNode.mm in Sources */,
21012101
430E7C911B4C23F100697A4C /* ASIndexPath.m in Sources */,
21022102
ACF6ED231B17843500DA7C62 /* ASInsetLayoutSpec.mm in Sources */,
2103-
ACF6ED4C1B17847A00DA7C62 /* ASInternalHelpers.mm in Sources */,
2103+
ACF6ED4C1B17847A00DA7C62 /* ASInternalHelpers.m in Sources */,
21042104
68FC85DF1CE29AB700EDD713 /* ASNavigationController.m in Sources */,
21052105
ACF6ED251B17843500DA7C62 /* ASLayout.mm in Sources */,
21062106
CC4981BD1D1C7F65004E13CC /* NSIndexSet+ASHelpers.m in Sources */,
@@ -2279,7 +2279,7 @@
22792279
254C6B821BF94F8A003EC431 /* ASTextKitComponents.m in Sources */,
22802280
430E7C921B4C23F100697A4C /* ASIndexPath.m in Sources */,
22812281
34EFC7601B701C8B00AD841F /* ASInsetLayoutSpec.mm in Sources */,
2282-
34EFC75E1B701BF000AD841F /* ASInternalHelpers.mm in Sources */,
2282+
34EFC75E1B701BF000AD841F /* ASInternalHelpers.m in Sources */,
22832283
34EFC7681B701CDE00AD841F /* ASLayout.mm in Sources */,
22842284
DECBD6EA1BE56E1900CF4905 /* ASButtonNode.mm in Sources */,
22852285
254C6B841BF94F8A003EC431 /* ASTextNodeWordKerner.m in Sources */,

AsyncDisplayKit/Private/ASInternalHelpers.mm renamed to AsyncDisplayKit/Private/ASInternalHelpers.m

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
#import <objc/runtime.h>
1414

1515
#import "ASThread.h"
16+
#import <tgmath.h>
1617

1718
BOOL ASSubclassOverridesSelector(Class superclass, Class subclass, SEL selector)
1819
{
@@ -80,17 +81,20 @@ CGFloat ASScreenScale()
8081

8182
CGFloat ASFloorPixelValue(CGFloat f)
8283
{
83-
return floorf(f * ASScreenScale()) / ASScreenScale();
84+
CGFloat scale = ASScreenScale();
85+
return floor(f * scale) / scale;
8486
}
8587

8688
CGFloat ASCeilPixelValue(CGFloat f)
8789
{
88-
return ceilf(f * ASScreenScale()) / ASScreenScale();
90+
CGFloat scale = ASScreenScale();
91+
return ceil(f * scale) / scale;
8992
}
9093

9194
CGFloat ASRoundPixelValue(CGFloat f)
9295
{
93-
return roundf(f * ASScreenScale()) / ASScreenScale();
96+
CGFloat scale = ASScreenScale();
97+
return round(f * scale) / scale;
9498
}
9599

96100
@implementation NSIndexPath (ASInverseComparison)

0 commit comments

Comments
 (0)