Implementation of `operator==` for YGValue
Summary: @public It's very useful sometimes for product code to compare `YGValue`s (e.g. in Fabric). Reviewed By: priteshrnandgaonkar Differential Revision: D8937594 fbshipit-source-id: b93e1ab4a6419ada6746f233b587e8c9cb32c6d4
This commit is contained in:
parent
fab5fffbb3
commit
6bf9024107
|
@ -48,6 +48,19 @@ const YGValue YGValueZero = {0, YGUnitPoint};
|
|||
const YGValue YGValueUndefined = {YGUndefined, YGUnitUndefined};
|
||||
const YGValue YGValueAuto = {YGUndefined, YGUnitAuto};
|
||||
|
||||
bool operator==(const YGValue& lhs, const YGValue& rhs) {
|
||||
if ((lhs.unit == YGUnitUndefined && rhs.unit == YGUnitUndefined) ||
|
||||
(lhs.unit == YGUnitAuto && rhs.unit == YGUnitAuto)) {
|
||||
return true;
|
||||
}
|
||||
|
||||
return lhs.unit == rhs.unit && lhs.value == rhs.value;
|
||||
}
|
||||
|
||||
bool operator!=(const YGValue& lhs, const YGValue& rhs) {
|
||||
return !(lhs == rhs);
|
||||
}
|
||||
|
||||
#ifdef ANDROID
|
||||
#include <android/log.h>
|
||||
static int YGAndroidLog(
|
||||
|
|
|
@ -45,6 +45,13 @@ typedef struct YGValue {
|
|||
extern const YGValue YGValueUndefined;
|
||||
extern const YGValue YGValueAuto;
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
||||
extern bool operator==(const YGValue& lhs, const YGValue& rhs);
|
||||
extern bool operator!=(const YGValue& lhs, const YGValue& rhs);
|
||||
|
||||
#endif
|
||||
|
||||
typedef struct YGConfig* YGConfigRef;
|
||||
|
||||
typedef struct YGNode* YGNodeRef;
|
||||
|
|
Loading…
Reference in New Issue