Back to all reviewers

Extract complex conditions

facebook/yoga
Based on 2 comments
C

When encountering complex conditional expressions or generic variable references, extract them into clearly named variables or use explicit identifiers to improve code readability and maintainability.

Code Style C

Reviewer Prompt

When encountering complex conditional expressions or generic variable references, extract them into clearly named variables or use explicit identifiers to improve code readability and maintainability.

For complex conditions, break them down into descriptive boolean variables:

// Instead of:
childCrossMeasureMode = YGFloatIsUndefined(childCrossSize) || 
    (currentRelativeChild->resolvedDimensions[dim[crossAxis]]->unit == YGUnitAuto) 
    ? YGMeasureModeUndefined : YGMeasureModeExactly;

// Extract to:
bool hasUndefinedSize = YGFloatIsUndefined(childCrossSize);
bool hasAutoUnit = currentRelativeChild->resolvedDimensions[dim[crossAxis]]->unit == YGUnitAuto;
childCrossMeasureMode = (hasUndefinedSize || hasAutoUnit) 
    ? YGMeasureModeUndefined : YGMeasureModeExactly;

For generic references, prefer explicit, context-specific identifiers:

// Instead of:
return node->layout.measuredDimensions[dim[crossAxis]];

// Use explicit:
return node->layout.measuredDimensions[YGDimensionHeight];

This practice makes code self-documenting, easier to debug, and reduces cognitive load when reading complex logic.

2
Comments Analyzed
C
Primary Language
Code Style
Category

Source Discussions