]> OCCT Git - occt.git/commit
Foundation Classes - Optimize Quantity package (#834)
authorPasukhin Dmitry <dpasukhi@opencascade.com>
Mon, 17 Nov 2025 09:54:17 +0000 (09:54 +0000)
committerGitHub <noreply@github.com>
Mon, 17 Nov 2025 09:54:17 +0000 (09:54 +0000)
commitc2375c78a69412e297bc997be798122fe4e9675f
tree182f9939349f9090628bd2766bd63affb954f117
parent07239e2a8bec6fcc59ee537ef7e9ac5de5749862
Foundation Classes - Optimize Quantity package (#834)

- Converted validation macros to inline functions for better type safety
- Added `noexcept` specifiers to non-throwing functions for compiler optimization opportunities
- Added `constexpr` to compile-time evaluable functions (comparison operators, leap year calculation)
- Enhanced `Quantity_Color::StringName()` to return "UNDEFINED" instead of throwing exceptions
- Introduced shared time constants header for better maintainability
14 files changed:
src/FoundationClasses/TKernel/GTests/FILES.cmake
src/FoundationClasses/TKernel/GTests/Quantity_ColorRGBA_Test.cxx [new file with mode: 0644]
src/FoundationClasses/TKernel/GTests/Quantity_Color_Test.cxx [new file with mode: 0644]
src/FoundationClasses/TKernel/GTests/Quantity_Date_Test.cxx [new file with mode: 0644]
src/FoundationClasses/TKernel/GTests/Quantity_Period_Test.cxx [new file with mode: 0644]
src/FoundationClasses/TKernel/Quantity/Quantity_Color.cxx
src/FoundationClasses/TKernel/Quantity/Quantity_Color.hxx
src/FoundationClasses/TKernel/Quantity/Quantity_ColorRGBA.cxx
src/FoundationClasses/TKernel/Quantity/Quantity_ColorRGBA.hxx
src/FoundationClasses/TKernel/Quantity/Quantity_Date.cxx
src/FoundationClasses/TKernel/Quantity/Quantity_Date.hxx
src/FoundationClasses/TKernel/Quantity/Quantity_Period.cxx
src/FoundationClasses/TKernel/Quantity/Quantity_Period.hxx
src/FoundationClasses/TKernel/Quantity/Quantity_TimeConstants.pxx [new file with mode: 0644]