Skip to content

Match Core Graphics CGRect standardization & emptiness - #885

Open
bogusyogi wants to merge 1 commit into
madsmtm:mainfrom
bogusyogi:codex/806-cgrect-semantics
Open

bogusyogi wants to merge 1 commit into
madsmtm:mainfrom
bogusyogi:codex/806-cgrect-semantics

Conversation

@bogusyogi

Copy link
Copy Markdown

Standardizing a negative-sized rectangle now moves its origin as Core Graphics does. is_empty follows native behavior for negative sizes, null rectangles, infinities & NaNs.

Adds a differential macOS regression comparing Rust helpers directly with CGRectStandardize & CGRectIsEmpty across 14,641 rectangles, including signed zero & non-finite values. Enables CoreFoundation std for this test through the generator override & generated manifest. Fixes #806.

Validation on macOS (fork job), commit e52529baa0991e90b8c392d89de90294dbd83e82:

  • CoreGraphics geometry integration test with defaults & with only std,CGGeometry.
  • CoreFoundation geometry test with only std,CFCGTypes.
  • All nine doctests for that CoreFoundation feature set.

Prepared with AI assistance.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

CGRect::standardize and CGRect::is_empty behavior for negative sizes

1 participant