C++ style enums 17/N: Gutter (#1407)

Summary:
X-link: https://github.com/facebook/react-native/pull/39599

Pull Request resolved: https://github.com/facebook/yoga/pull/1407

Replaces internal usages of YGGutter with Gutter.

Changelog: [Internal]

Reviewed By: rshest

Differential Revision: D49532100

fbshipit-source-id: 53c1d23e23a9db7294c66b6dc0eaff4e62ff278c
This commit is contained in:
Nick Gerleman
2023-10-04 20:34:42 -07:00
committed by Facebook GitHub Bot
parent 98d2172e05
commit f700e1335c
3 changed files with 19 additions and 17 deletions

View File

@@ -635,11 +635,12 @@ void YGNodeStyleSetGap(
const YGGutter gutter, const YGGutter gutter,
const float gapLength) { const float gapLength) {
auto length = CompactValue::ofMaybe<YGUnitPoint>(gapLength); auto length = CompactValue::ofMaybe<YGUnitPoint>(gapLength);
updateIndexedStyleProp<&Style::gap, &Style::setGap>(node, gutter, length); updateIndexedStyleProp<&Style::gap, &Style::setGap>(
node, scopedEnum(gutter), length);
} }
float YGNodeStyleGetGap(const YGNodeConstRef node, const YGGutter gutter) { float YGNodeStyleGetGap(const YGNodeConstRef node, const YGGutter gutter) {
auto gapLength = resolveRef(node)->getStyle().gap(gutter); auto gapLength = resolveRef(node)->getStyle().gap(scopedEnum(gutter));
if (gapLength.isUndefined() || gapLength.isAuto()) { if (gapLength.isUndefined() || gapLength.isAuto()) {
return YGUndefined; return YGUndefined;
} }

View File

@@ -177,11 +177,11 @@ void nodeToString(
appendEdges(str, "padding", style.padding()); appendEdges(str, "padding", style.padding());
appendEdges(str, "border", style.border()); appendEdges(str, "border", style.border());
if (!style.gap(YGGutterAll).isUndefined()) { if (!style.gap(Gutter::All).isUndefined()) {
appendNumberIfNotUndefined(str, "gap", style.gap(YGGutterAll)); appendNumberIfNotUndefined(str, "gap", style.gap(Gutter::All));
} else { } else {
appendNumberIfNotUndefined(str, "column-gap", style.gap(YGGutterColumn)); appendNumberIfNotUndefined(str, "column-gap", style.gap(Gutter::Column));
appendNumberIfNotUndefined(str, "row-gap", style.gap(YGGutterRow)); appendNumberIfNotUndefined(str, "row-gap", style.gap(Gutter::Row));
} }
appendNumberIfNotAuto(str, "width", style.dimension(Dimension::Width)); appendNumberIfNotAuto(str, "width", style.dimension(Dimension::Width));

View File

@@ -20,6 +20,7 @@
#include <yoga/enums/Direction.h> #include <yoga/enums/Direction.h>
#include <yoga/enums/Display.h> #include <yoga/enums/Display.h>
#include <yoga/enums/FlexDirection.h> #include <yoga/enums/FlexDirection.h>
#include <yoga/enums/Gutter.h>
#include <yoga/enums/Justify.h> #include <yoga/enums/Justify.h>
#include <yoga/enums/Overflow.h> #include <yoga/enums/Overflow.h>
#include <yoga/enums/PositionType.h> #include <yoga/enums/PositionType.h>
@@ -36,7 +37,7 @@ class YG_EXPORT Style {
public: public:
using Dimensions = Values<Dimension>; using Dimensions = Values<Dimension>;
using Edges = Values<YGEdge>; using Edges = Values<YGEdge>;
using Gutters = Values<YGGutter>; using Gutters = Values<Gutter>;
static constexpr float DefaultFlexGrow = 0.0f; static constexpr float DefaultFlexGrow = 0.0f;
static constexpr float DefaultFlexShrink = 0.0f; static constexpr float DefaultFlexShrink = 0.0f;
@@ -274,11 +275,11 @@ class YG_EXPORT Style {
return {*this}; return {*this};
} }
CompactValue gap(YGGutter gutter) const { CompactValue gap(Gutter gutter) const {
return gap_[gutter]; return gap_[yoga::to_underlying(gutter)];
} }
void setGap(YGGutter gutter, CompactValue value) { void setGap(Gutter gutter, CompactValue value) {
gap_[gutter] = value; gap_[yoga::to_underlying(gutter)] = value;
} }
CompactValue dimension(Dimension axis) const { CompactValue dimension(Dimension axis) const {
@@ -311,18 +312,18 @@ class YG_EXPORT Style {
} }
CompactValue resolveColumnGap() const { CompactValue resolveColumnGap() const {
if (!gap_[YGGutterColumn].isUndefined()) { if (!gap_[yoga::to_underlying(Gutter::Column)].isUndefined()) {
return gap_[YGGutterColumn]; return gap_[yoga::to_underlying(Gutter::Column)];
} else { } else {
return gap_[YGGutterAll]; return gap_[yoga::to_underlying(Gutter::All)];
} }
} }
CompactValue resolveRowGap() const { CompactValue resolveRowGap() const {
if (!gap_[YGGutterRow].isUndefined()) { if (!gap_[yoga::to_underlying(Gutter::Row)].isUndefined()) {
return gap_[YGGutterRow]; return gap_[yoga::to_underlying(Gutter::Row)];
} else { } else {
return gap_[YGGutterAll]; return gap_[yoga::to_underlying(Gutter::All)];
} }
} }