mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-09 03:15:11 +00:00
Bug 1320014 Part 9 - Convert NS_HALF_CORNER_IS_X to a constexpr function. r=mats
MozReview-Commit-ID: 3d2opSIjAUc --HG-- extra : rebase_source : 03e55f0458dd305fa782ca1e46c32069045e86e9
This commit is contained in:
parent
df030594f6
commit
229d433359
@ -469,6 +469,11 @@ static inline HalfCorner operator++(HalfCorner& aHalfCorner) {
|
||||
return aHalfCorner;
|
||||
}
|
||||
|
||||
constexpr bool HalfCornerIsX(HalfCorner aHalfCorner)
|
||||
{
|
||||
return !(aHalfCorner % 2);
|
||||
}
|
||||
|
||||
} // namespace mozilla
|
||||
|
||||
#endif /* MOZILLA_GFX_TYPES_H_ */
|
||||
|
@ -1256,7 +1256,7 @@ nsIFrame::ComputeBorderRadii(const nsStyleCorners& aBorderRadius,
|
||||
NS_FOR_CSS_HALF_CORNERS(i) {
|
||||
const nsStyleCoord c = aBorderRadius.Get(i);
|
||||
nscoord axis =
|
||||
NS_HALF_CORNER_IS_X(i) ? aFrameSize.width : aFrameSize.height;
|
||||
HalfCornerIsX(i) ? aFrameSize.width : aFrameSize.height;
|
||||
|
||||
if (c.IsCoordPercentCalcUnit()) {
|
||||
aRadii[i] = nsRuleNode::ComputeCoordPercentCalc(c, axis);
|
||||
|
@ -20,7 +20,6 @@ namespace mozilla {
|
||||
// nsStyleCoord.cpp.
|
||||
// Arguments must not have side effects.
|
||||
|
||||
#define NS_HALF_CORNER_IS_X(var_) (!((var_)%2))
|
||||
#define NS_HALF_TO_FULL_CORNER(var_) ((var_)/2)
|
||||
#define NS_FULL_TO_HALF_CORNER(var_, vert_) ((var_)*2 + !!(vert_))
|
||||
|
||||
|
@ -340,9 +340,10 @@ CASE(eSideBottom, false);
|
||||
CASE(eSideLeft, true);
|
||||
#undef CASE
|
||||
|
||||
// Validation of HalfCornerIsX.
|
||||
#define CASE(corner, result) \
|
||||
static_assert(NS_HALF_CORNER_IS_X(corner) == result, \
|
||||
"NS_HALF_CORNER_IS_X is wrong")
|
||||
static_assert(HalfCornerIsX(corner) == result, \
|
||||
"HalfCornerIsX is wrong")
|
||||
CASE(eCornerTopLeftX, true);
|
||||
CASE(eCornerTopLeftY, false);
|
||||
CASE(eCornerTopRightX, true);
|
||||
|
Loading…
Reference in New Issue
Block a user