Generate enums in sorted order
Summary: This PR forces the order of the generated enums in alphabetically order. This is needed to have a predictable order of the enums across different python versions. Which reduces the pain for merging multiple enum additions. Closes https://github.com/facebook/yoga/pull/370 Reviewed By: gkassabli Differential Revision: D4501140 Pulled By: emilsjolander fbshipit-source-id: 66c0ed9e4ea7a5990578b53b0a7e400c13dd53a9
This commit is contained in:
committed by
Facebook Github Bot
parent
d62ca8c518
commit
511a129a7e
8
enums.py
8
enums.py
@@ -125,7 +125,7 @@ with open(root + '/yoga/YGEnums.h', 'w') as f:
|
|||||||
f.write('#pragma once\n\n')
|
f.write('#pragma once\n\n')
|
||||||
f.write('#include "YGMacros.h"\n\n')
|
f.write('#include "YGMacros.h"\n\n')
|
||||||
f.write('YG_EXTERN_C_BEGIN\n\n')
|
f.write('YG_EXTERN_C_BEGIN\n\n')
|
||||||
for name, values in ENUMS.items():
|
for name, values in sorted(ENUMS.items()):
|
||||||
f.write('#define YG%sCount %s\n' % (name, len(values)))
|
f.write('#define YG%sCount %s\n' % (name, len(values)))
|
||||||
f.write('typedef YG_ENUM_BEGIN(YG%s) {\n' % name)
|
f.write('typedef YG_ENUM_BEGIN(YG%s) {\n' % name)
|
||||||
for value in values:
|
for value in values:
|
||||||
@@ -138,7 +138,7 @@ with open(root + '/yoga/YGEnums.h', 'w') as f:
|
|||||||
f.write('YG_EXTERN_C_END\n')
|
f.write('YG_EXTERN_C_END\n')
|
||||||
|
|
||||||
# write out java files
|
# write out java files
|
||||||
for name, values in ENUMS.items():
|
for name, values in sorted(ENUMS.items()):
|
||||||
with open(root + '/java/com/facebook/yoga/Yoga%s.java' % name, 'w') as f:
|
with open(root + '/java/com/facebook/yoga/Yoga%s.java' % name, 'w') as f:
|
||||||
f.write(LICENSE)
|
f.write(LICENSE)
|
||||||
f.write('package com.facebook.yoga;\n\n')
|
f.write('package com.facebook.yoga;\n\n')
|
||||||
@@ -181,7 +181,7 @@ for name, values in ENUMS.items():
|
|||||||
f.write('}\n')
|
f.write('}\n')
|
||||||
|
|
||||||
# write out csharp files
|
# write out csharp files
|
||||||
for name, values in ENUMS.items():
|
for name, values in sorted(ENUMS.items()):
|
||||||
with open(root + '/csharp/Facebook.Yoga/Yoga%s.cs' % name, 'w') as f:
|
with open(root + '/csharp/Facebook.Yoga/Yoga%s.cs' % name, 'w') as f:
|
||||||
f.write(LICENSE)
|
f.write(LICENSE)
|
||||||
f.write('namespace Facebook.Yoga\n{\n')
|
f.write('namespace Facebook.Yoga\n{\n')
|
||||||
@@ -198,7 +198,7 @@ for name, values in ENUMS.items():
|
|||||||
with open(root + '/javascript/sources/YGEnums.js', 'w') as f:
|
with open(root + '/javascript/sources/YGEnums.js', 'w') as f:
|
||||||
f.write(LICENSE)
|
f.write(LICENSE)
|
||||||
f.write('module.exports = {\n\n')
|
f.write('module.exports = {\n\n')
|
||||||
for name, values in ENUMS.items():
|
for name, values in sorted(ENUMS.items()):
|
||||||
f.write(' %s_COUNT: %s,\n' % (to_java_upper(name), len(values)))
|
f.write(' %s_COUNT: %s,\n' % (to_java_upper(name), len(values)))
|
||||||
base = 0
|
base = 0
|
||||||
for value in values:
|
for value in values:
|
||||||
|
@@ -9,21 +9,22 @@
|
|||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
|
|
||||||
FLEX_DIRECTION_COUNT: 4,
|
ALIGN_COUNT: 6,
|
||||||
FLEX_DIRECTION_COLUMN: 0,
|
ALIGN_AUTO: 0,
|
||||||
FLEX_DIRECTION_COLUMN_REVERSE: 1,
|
ALIGN_FLEX_START: 1,
|
||||||
FLEX_DIRECTION_ROW: 2,
|
ALIGN_CENTER: 2,
|
||||||
FLEX_DIRECTION_ROW_REVERSE: 3,
|
ALIGN_FLEX_END: 3,
|
||||||
|
ALIGN_STRETCH: 4,
|
||||||
|
ALIGN_BASELINE: 5,
|
||||||
|
|
||||||
MEASURE_MODE_COUNT: 3,
|
DIMENSION_COUNT: 2,
|
||||||
MEASURE_MODE_UNDEFINED: 0,
|
DIMENSION_WIDTH: 0,
|
||||||
MEASURE_MODE_EXACTLY: 1,
|
DIMENSION_HEIGHT: 1,
|
||||||
MEASURE_MODE_AT_MOST: 2,
|
|
||||||
|
|
||||||
PRINT_OPTIONS_COUNT: 3,
|
DIRECTION_COUNT: 3,
|
||||||
PRINT_OPTIONS_LAYOUT: 1,
|
DIRECTION_INHERIT: 0,
|
||||||
PRINT_OPTIONS_STYLE: 2,
|
DIRECTION_LTR: 1,
|
||||||
PRINT_OPTIONS_CHILDREN: 4,
|
DIRECTION_RTL: 2,
|
||||||
|
|
||||||
EDGE_COUNT: 9,
|
EDGE_COUNT: 9,
|
||||||
EDGE_LEFT: 0,
|
EDGE_LEFT: 0,
|
||||||
@@ -36,13 +37,15 @@ module.exports = {
|
|||||||
EDGE_VERTICAL: 7,
|
EDGE_VERTICAL: 7,
|
||||||
EDGE_ALL: 8,
|
EDGE_ALL: 8,
|
||||||
|
|
||||||
POSITION_TYPE_COUNT: 2,
|
EXPERIMENTAL_FEATURE_COUNT: 2,
|
||||||
POSITION_TYPE_RELATIVE: 0,
|
EXPERIMENTAL_FEATURE_ROUNDING: 0,
|
||||||
POSITION_TYPE_ABSOLUTE: 1,
|
EXPERIMENTAL_FEATURE_WEB_FLEX_BASIS: 1,
|
||||||
|
|
||||||
DIMENSION_COUNT: 2,
|
FLEX_DIRECTION_COUNT: 4,
|
||||||
DIMENSION_WIDTH: 0,
|
FLEX_DIRECTION_COLUMN: 0,
|
||||||
DIMENSION_HEIGHT: 1,
|
FLEX_DIRECTION_COLUMN_REVERSE: 1,
|
||||||
|
FLEX_DIRECTION_ROW: 2,
|
||||||
|
FLEX_DIRECTION_ROW_REVERSE: 3,
|
||||||
|
|
||||||
JUSTIFY_COUNT: 5,
|
JUSTIFY_COUNT: 5,
|
||||||
JUSTIFY_FLEX_START: 0,
|
JUSTIFY_FLEX_START: 0,
|
||||||
@@ -51,11 +54,6 @@ module.exports = {
|
|||||||
JUSTIFY_SPACE_BETWEEN: 3,
|
JUSTIFY_SPACE_BETWEEN: 3,
|
||||||
JUSTIFY_SPACE_AROUND: 4,
|
JUSTIFY_SPACE_AROUND: 4,
|
||||||
|
|
||||||
DIRECTION_COUNT: 3,
|
|
||||||
DIRECTION_INHERIT: 0,
|
|
||||||
DIRECTION_LTR: 1,
|
|
||||||
DIRECTION_RTL: 2,
|
|
||||||
|
|
||||||
LOG_LEVEL_COUNT: 5,
|
LOG_LEVEL_COUNT: 5,
|
||||||
LOG_LEVEL_ERROR: 0,
|
LOG_LEVEL_ERROR: 0,
|
||||||
LOG_LEVEL_WARN: 1,
|
LOG_LEVEL_WARN: 1,
|
||||||
@@ -63,30 +61,32 @@ module.exports = {
|
|||||||
LOG_LEVEL_DEBUG: 3,
|
LOG_LEVEL_DEBUG: 3,
|
||||||
LOG_LEVEL_VERBOSE: 4,
|
LOG_LEVEL_VERBOSE: 4,
|
||||||
|
|
||||||
WRAP_COUNT: 2,
|
MEASURE_MODE_COUNT: 3,
|
||||||
WRAP_NO_WRAP: 0,
|
MEASURE_MODE_UNDEFINED: 0,
|
||||||
WRAP_WRAP: 1,
|
MEASURE_MODE_EXACTLY: 1,
|
||||||
|
MEASURE_MODE_AT_MOST: 2,
|
||||||
|
|
||||||
OVERFLOW_COUNT: 3,
|
OVERFLOW_COUNT: 3,
|
||||||
OVERFLOW_VISIBLE: 0,
|
OVERFLOW_VISIBLE: 0,
|
||||||
OVERFLOW_HIDDEN: 1,
|
OVERFLOW_HIDDEN: 1,
|
||||||
OVERFLOW_SCROLL: 2,
|
OVERFLOW_SCROLL: 2,
|
||||||
|
|
||||||
EXPERIMENTAL_FEATURE_COUNT: 2,
|
POSITION_TYPE_COUNT: 2,
|
||||||
EXPERIMENTAL_FEATURE_ROUNDING: 0,
|
POSITION_TYPE_RELATIVE: 0,
|
||||||
EXPERIMENTAL_FEATURE_WEB_FLEX_BASIS: 1,
|
POSITION_TYPE_ABSOLUTE: 1,
|
||||||
|
|
||||||
ALIGN_COUNT: 6,
|
PRINT_OPTIONS_COUNT: 3,
|
||||||
ALIGN_AUTO: 0,
|
PRINT_OPTIONS_LAYOUT: 1,
|
||||||
ALIGN_FLEX_START: 1,
|
PRINT_OPTIONS_STYLE: 2,
|
||||||
ALIGN_CENTER: 2,
|
PRINT_OPTIONS_CHILDREN: 4,
|
||||||
ALIGN_FLEX_END: 3,
|
|
||||||
ALIGN_STRETCH: 4,
|
|
||||||
ALIGN_BASELINE: 5,
|
|
||||||
|
|
||||||
UNIT_COUNT: 3,
|
UNIT_COUNT: 3,
|
||||||
UNIT_UNDEFINED: 0,
|
UNIT_UNDEFINED: 0,
|
||||||
UNIT_PIXEL: 1,
|
UNIT_PIXEL: 1,
|
||||||
UNIT_PERCENT: 2,
|
UNIT_PERCENT: 2,
|
||||||
|
|
||||||
|
WRAP_COUNT: 2,
|
||||||
|
WRAP_NO_WRAP: 0,
|
||||||
|
WRAP_WRAP: 1,
|
||||||
|
|
||||||
};
|
};
|
||||||
|
165
yoga/YGEnums.h
165
yoga/YGEnums.h
@@ -13,91 +13,112 @@
|
|||||||
|
|
||||||
YG_EXTERN_C_BEGIN
|
YG_EXTERN_C_BEGIN
|
||||||
|
|
||||||
#define YGFlexDirectionCount 4
|
#define YGAlignCount 6
|
||||||
typedef YG_ENUM_BEGIN(YGFlexDirection) {
|
typedef YG_ENUM_BEGIN(YGAlign) {
|
||||||
YGFlexDirectionColumn, YGFlexDirectionColumnReverse, YGFlexDirectionRow,
|
YGAlignAuto,
|
||||||
YGFlexDirectionRowReverse,
|
YGAlignFlexStart,
|
||||||
}
|
YGAlignCenter,
|
||||||
YG_ENUM_END(YGFlexDirection);
|
YGAlignFlexEnd,
|
||||||
|
YGAlignStretch,
|
||||||
#define YGMeasureModeCount 3
|
YGAlignBaseline,
|
||||||
typedef YG_ENUM_BEGIN(YGMeasureMode) {
|
} YG_ENUM_END(YGAlign);
|
||||||
YGMeasureModeUndefined, YGMeasureModeExactly, YGMeasureModeAtMost,
|
|
||||||
}
|
|
||||||
YG_ENUM_END(YGMeasureMode);
|
|
||||||
|
|
||||||
#define YGPrintOptionsCount 3
|
|
||||||
typedef YG_ENUM_BEGIN(YGPrintOptions) {
|
|
||||||
YGPrintOptionsLayout = 1, YGPrintOptionsStyle = 2, YGPrintOptionsChildren = 4,
|
|
||||||
}
|
|
||||||
YG_ENUM_END(YGPrintOptions);
|
|
||||||
|
|
||||||
#define YGEdgeCount 9
|
|
||||||
typedef YG_ENUM_BEGIN(YGEdge) {
|
|
||||||
YGEdgeLeft, YGEdgeTop, YGEdgeRight, YGEdgeBottom, YGEdgeStart, YGEdgeEnd, YGEdgeHorizontal,
|
|
||||||
YGEdgeVertical, YGEdgeAll,
|
|
||||||
}
|
|
||||||
YG_ENUM_END(YGEdge);
|
|
||||||
|
|
||||||
#define YGPositionTypeCount 2
|
|
||||||
typedef YG_ENUM_BEGIN(YGPositionType) {
|
|
||||||
YGPositionTypeRelative, YGPositionTypeAbsolute,
|
|
||||||
}
|
|
||||||
YG_ENUM_END(YGPositionType);
|
|
||||||
|
|
||||||
#define YGDimensionCount 2
|
#define YGDimensionCount 2
|
||||||
typedef YG_ENUM_BEGIN(YGDimension) {
|
typedef YG_ENUM_BEGIN(YGDimension) {
|
||||||
YGDimensionWidth, YGDimensionHeight,
|
YGDimensionWidth,
|
||||||
}
|
YGDimensionHeight,
|
||||||
YG_ENUM_END(YGDimension);
|
} YG_ENUM_END(YGDimension);
|
||||||
|
|
||||||
#define YGJustifyCount 5
|
|
||||||
typedef YG_ENUM_BEGIN(YGJustify) {
|
|
||||||
YGJustifyFlexStart, YGJustifyCenter, YGJustifyFlexEnd, YGJustifySpaceBetween,
|
|
||||||
YGJustifySpaceAround,
|
|
||||||
}
|
|
||||||
YG_ENUM_END(YGJustify);
|
|
||||||
|
|
||||||
#define YGDirectionCount 3
|
#define YGDirectionCount 3
|
||||||
typedef YG_ENUM_BEGIN(YGDirection) {
|
typedef YG_ENUM_BEGIN(YGDirection) {
|
||||||
YGDirectionInherit, YGDirectionLTR, YGDirectionRTL,
|
YGDirectionInherit,
|
||||||
}
|
YGDirectionLTR,
|
||||||
YG_ENUM_END(YGDirection);
|
YGDirectionRTL,
|
||||||
|
} YG_ENUM_END(YGDirection);
|
||||||
|
|
||||||
#define YGLogLevelCount 5
|
#define YGEdgeCount 9
|
||||||
typedef YG_ENUM_BEGIN(YGLogLevel) {
|
typedef YG_ENUM_BEGIN(YGEdge) {
|
||||||
YGLogLevelError, YGLogLevelWarn, YGLogLevelInfo, YGLogLevelDebug, YGLogLevelVerbose,
|
YGEdgeLeft,
|
||||||
}
|
YGEdgeTop,
|
||||||
YG_ENUM_END(YGLogLevel);
|
YGEdgeRight,
|
||||||
|
YGEdgeBottom,
|
||||||
#define YGWrapCount 2
|
YGEdgeStart,
|
||||||
typedef YG_ENUM_BEGIN(YGWrap) {
|
YGEdgeEnd,
|
||||||
YGWrapNoWrap, YGWrapWrap,
|
YGEdgeHorizontal,
|
||||||
}
|
YGEdgeVertical,
|
||||||
YG_ENUM_END(YGWrap);
|
YGEdgeAll,
|
||||||
|
} YG_ENUM_END(YGEdge);
|
||||||
#define YGOverflowCount 3
|
|
||||||
typedef YG_ENUM_BEGIN(YGOverflow) {
|
|
||||||
YGOverflowVisible, YGOverflowHidden, YGOverflowScroll,
|
|
||||||
}
|
|
||||||
YG_ENUM_END(YGOverflow);
|
|
||||||
|
|
||||||
#define YGExperimentalFeatureCount 2
|
#define YGExperimentalFeatureCount 2
|
||||||
typedef YG_ENUM_BEGIN(YGExperimentalFeature) {
|
typedef YG_ENUM_BEGIN(YGExperimentalFeature) {
|
||||||
YGExperimentalFeatureRounding, YGExperimentalFeatureWebFlexBasis,
|
YGExperimentalFeatureRounding,
|
||||||
}
|
YGExperimentalFeatureWebFlexBasis,
|
||||||
YG_ENUM_END(YGExperimentalFeature);
|
} YG_ENUM_END(YGExperimentalFeature);
|
||||||
|
|
||||||
#define YGAlignCount 6
|
#define YGFlexDirectionCount 4
|
||||||
typedef YG_ENUM_BEGIN(YGAlign) {
|
typedef YG_ENUM_BEGIN(YGFlexDirection) {
|
||||||
YGAlignAuto, YGAlignFlexStart, YGAlignCenter, YGAlignFlexEnd, YGAlignStretch, YGAlignBaseline,
|
YGFlexDirectionColumn,
|
||||||
}
|
YGFlexDirectionColumnReverse,
|
||||||
YG_ENUM_END(YGAlign);
|
YGFlexDirectionRow,
|
||||||
|
YGFlexDirectionRowReverse,
|
||||||
|
} YG_ENUM_END(YGFlexDirection);
|
||||||
|
|
||||||
|
#define YGJustifyCount 5
|
||||||
|
typedef YG_ENUM_BEGIN(YGJustify) {
|
||||||
|
YGJustifyFlexStart,
|
||||||
|
YGJustifyCenter,
|
||||||
|
YGJustifyFlexEnd,
|
||||||
|
YGJustifySpaceBetween,
|
||||||
|
YGJustifySpaceAround,
|
||||||
|
} YG_ENUM_END(YGJustify);
|
||||||
|
|
||||||
|
#define YGLogLevelCount 5
|
||||||
|
typedef YG_ENUM_BEGIN(YGLogLevel) {
|
||||||
|
YGLogLevelError,
|
||||||
|
YGLogLevelWarn,
|
||||||
|
YGLogLevelInfo,
|
||||||
|
YGLogLevelDebug,
|
||||||
|
YGLogLevelVerbose,
|
||||||
|
} YG_ENUM_END(YGLogLevel);
|
||||||
|
|
||||||
|
#define YGMeasureModeCount 3
|
||||||
|
typedef YG_ENUM_BEGIN(YGMeasureMode) {
|
||||||
|
YGMeasureModeUndefined,
|
||||||
|
YGMeasureModeExactly,
|
||||||
|
YGMeasureModeAtMost,
|
||||||
|
} YG_ENUM_END(YGMeasureMode);
|
||||||
|
|
||||||
|
#define YGOverflowCount 3
|
||||||
|
typedef YG_ENUM_BEGIN(YGOverflow) {
|
||||||
|
YGOverflowVisible,
|
||||||
|
YGOverflowHidden,
|
||||||
|
YGOverflowScroll,
|
||||||
|
} YG_ENUM_END(YGOverflow);
|
||||||
|
|
||||||
|
#define YGPositionTypeCount 2
|
||||||
|
typedef YG_ENUM_BEGIN(YGPositionType) {
|
||||||
|
YGPositionTypeRelative,
|
||||||
|
YGPositionTypeAbsolute,
|
||||||
|
} YG_ENUM_END(YGPositionType);
|
||||||
|
|
||||||
|
#define YGPrintOptionsCount 3
|
||||||
|
typedef YG_ENUM_BEGIN(YGPrintOptions) {
|
||||||
|
YGPrintOptionsLayout = 1,
|
||||||
|
YGPrintOptionsStyle = 2,
|
||||||
|
YGPrintOptionsChildren = 4,
|
||||||
|
} YG_ENUM_END(YGPrintOptions);
|
||||||
|
|
||||||
#define YGUnitCount 3
|
#define YGUnitCount 3
|
||||||
typedef YG_ENUM_BEGIN(YGUnit) {
|
typedef YG_ENUM_BEGIN(YGUnit) {
|
||||||
YGUnitUndefined, YGUnitPixel, YGUnitPercent,
|
YGUnitUndefined,
|
||||||
}
|
YGUnitPixel,
|
||||||
YG_ENUM_END(YGUnit);
|
YGUnitPercent,
|
||||||
|
} YG_ENUM_END(YGUnit);
|
||||||
|
|
||||||
|
#define YGWrapCount 2
|
||||||
|
typedef YG_ENUM_BEGIN(YGWrap) {
|
||||||
|
YGWrapNoWrap,
|
||||||
|
YGWrapWrap,
|
||||||
|
} YG_ENUM_END(YGWrap);
|
||||||
|
|
||||||
YG_EXTERN_C_END
|
YG_EXTERN_C_END
|
||||||
|
Reference in New Issue
Block a user