Commit Graph
12 Commits
Author SHA1 Message Date
akkadbakkad89andDevin 38004dd687 feat(libSceNpCppWebApi): declare title-imported exports and implement the Common machinery
Adds the exports imported by PPSA20397 and PPSA03530 that had no
provider: Matchmaking::V1, Matches::V1, SessionManager::V1,
UserProfile::V1, TitleCloudStorage::V1, InGameCatalog::V5 domain
surfaces and the Common template instantiations over their types.

IntrusivePtr, Vector, Iterator and Transaction members follow the
layouts already implemented for the earlier titles; API verbs,
factories and transaction entry points fail
SCE_NP_WEBAPI_ERROR_NOT_SIGNED_IN as a signed-out console does;
parameter bookkeeping succeeds without state; response accessors and
vector iteration throw since a failed request produces no response.

Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-31 11:39:09 +05:30
Ondra97 1a8c22c90d chore(npcppwebapi): merge main and retain both test suites 2026-10-27 08:13:24 +01:00
Dean 55939ac105 Merge pull request #11204 from AlexFigas/fix/npcppwebapi-same-object-assignment
fix(libSceNpCppWebApi): keep the reference when an IntrusivePtr is assigned its own object
2026-10-27 10:39:44 +13:00
akkadbakkad89andDevin 7a95148e53 test(libSceNpCppWebApi): exercise the UserProfile exports through registered tests
Generated with [Devin](https://devin.ai)

Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
2026-10-26 08:46:49 +00:00
Alexandre Figueiredo 49c93d1357 fix(libSceNpCppWebApi): keep the reference when an IntrusivePtr is assigned its own object 2026-10-25 21:48:55 +00:00
Ondra97 0f998c1574 fix(npcppwebapi): preserve aliased inputs during growth 2026-10-25 02:03:06 +01:00
boykopovar f38d29fd08 refactor(sdk): add canonical headers for remaining libraries 2026-10-24 23:17:42 +03:00
Yossi Yadgar 0ec47d9587 feat(libSceNpCppWebApi): construct, copy, release and dereference the InGameCatalog and TitleCloudStorage IntrusivePtr types
The new instantiations use the shared IntrusivePtr helpers with the pointee's reference-count offset: 0x00 for objects, 0x30 for vector bodies.
2026-10-23 11:12:58 +03:00
DProkosandClaude Opus 5.5 d310c4e27e feat(libSceNpCppWebApi): answer the UserProfile, ProfanityFilter and CommunicationRestrictionStatus requests offline
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-20 11:22:34 +03:00
akkadbakkad89 8cd400aa49 feat(libs): restore libSceNpCppWebApi for dumps that ship no copy 2026-10-17 05:25:03 +00:00
Adrià FranchandClaude 79057e9160 refactor(libs): drop replacements of modules that titles ship themselves
Co-Authored-By: Claude <[email protected]>
2026-10-06 07:11:33 +02:00
DotDebianandClaude Opus 5.5 f2fb7852bb feat(libs): implement NpCppWebApi IntrusivePtr construction, copy, release and access
IntrusivePtr<T> is three pointers: object, deleter, LibContext. The default
constructors zero them, the copy constructors copy them and take a reference
on the object, operator-> and operator* return the object, and the destructors
drop a reference and hand the object to the deleter when it was the last one.
The last-reference release of a pointer without a deleter needs the object's
destructor and the LibContext memory pool and still throws.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-05 11:18:39 +02:00