Move ILinksExtensions to Platform::Data namespace and update with CLinks concept #155
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
π Solution Summary
This PR implements the requirements from issue #84 by:
β Completed Tasks
Platform::DatanamespaceCLinksconcept constraintπ Implementation Details
1. CLinks Concept (
cpp/Platform.Data/CLinks.h)LinkAddressType,LinksOptionsType,LinkType,ReadHandlerType,WriteHandlerTypeCount,Each,Create,Update,DeleteConstantsstatic member2. Updated ILinksExtensions (
cpp/Platform.Data/ILinksExtensions.h)typename TStoragetoCLinks TStorageCLinks.h,LinksConstantsExtensions.h,Point.hIsExternalReferenceandIsInternalReferenceDIRECT_METHOD_CALLandEnsures3. Function Updates
All extension functions now properly constrain their first parameter:
Create(both overloads)UpdateDelete(both overloads)CountExistsEachGetLinkIsFullPointIsPartialPointπ§ͺ Testing
ILinksTests.cppconfirm the extension functions work correctlyCreate(storage, linkAddress)) as shown in testsπ Issue Reference
Fixes #84
π€ Generated with Claude Code