aboutsummaryrefslogtreecommitdiff
path: root/src/extensible.cpp
Commit message (Expand)AuthorAgeFilesLines
* Default the fake pointer methods to ssize_t.Gravatar Sadie Powell2026-04-161-2/+2
* Add insp::find_value, insp::to_ptr and switch code to use them.Gravatar Sadie Powell2026-04-041-5/+2
* Kill the remaining uses of intptr_t.Gravatar Sadie Powell2026-03-301-6/+6
* Move service types to their own namespace.•••- ServiceProvider is now Service::Provider - DataProvider is now Service::SimpleProvider (the old name does not really make sense now we don't have SERVICE_DATA and the only difference is automatic registration. - Some members of ModuleManager have been elevated to the Service namespace in case other code wants to use them. Gravatar Sadie Powell2026-03-291-1/+1
* Switch modules from reference<> to shared_ptr<> and weak_ptr<>.Gravatar Sadie Powell2026-03-291-6/+7
* Switch the extensible system to using shared pointers.Gravatar Sadie Powell2026-03-271-37/+52
* Abolish FMT_PTR, this does the same for both formatters.Gravatar Sadie Powell2026-03-021-1/+1
* Rename ServiceProvider::creator to service_creator and add GetSource.Gravatar Sadie Powell2026-03-021-2/+2
* Massive rework of how internal service providers work.•••- ServiceType is dead. All modules use RegisterService now. - Modules can implement UnregisterService which is called from DelService now. - Split the service type prefix into its own field. - Renamed Service::name to Service::service_name. This revealed a few bugs. Gravatar Sadie Powell2026-03-021-1/+1
* Rename ServiceProvider methods to avoid shadowing issues.Gravatar Sadie Powell2026-03-021-3/+3
* Use C++20 <format> instead of fmtlib when available.Gravatar Sadie Powell2024-08-221-1/+1
* Synchronise extensibles in Sync even if they have no value.Gravatar Sadie Powell2024-07-241-2/+1
* Add ExtensionItem::OnSync which is called when an ext is synchronised.Gravatar Sadie Powell2024-07-241-0/+5
* Update copyright headers.Gravatar InspIRCd Robot2024-06-071-1/+1
* Don't try to serialize extension items when they're being unset.Gravatar Sadie Powell2024-03-081-1/+1
* Minor improvements to cull logging.•••- CULLLIST has been renamed to CULL which is easier to spell. - Some log messages have been improved slightly. Gravatar Sadie Powell2023-07-051-1/+1
* Fix casing of metadata in function and event names.•••Metadata is one word not two so it shouldn't be capitalised like this. Gravatar Sadie Powell2023-05-301-1/+1
* Convert log calls to use fmtlib format stringsGravatar Sadie Powell2023-01-241-2/+2
* Qualify auto correctly in all cases.Gravatar Sadie Powell2023-01-101-1/+1
* Don't automatically fall back to ToNetwork from ToInternal.•••Only one thing used this and its really unclear especially when SimpleExtItem does the opposite. Gravatar Sadie Powell2022-12-201-2/+1
* Move {From,To}Network from StringExtItem to SimpleExtItem.Gravatar Sadie Powell2022-12-201-9/+0
* Move extension types to their own header to speed up build times.Gravatar Sadie Powell2022-12-191-0/+1
* Modernize various minor legacy C++isms.Gravatar Sadie Powell2022-07-301-1/+1
* Rewrite logging calls to use the new APIs.Gravatar Sadie Powell2022-05-011-1/+1
* Slim down the protocol interface for sending metadata.Gravatar Sadie Powell2022-01-311-17/+2
* Refuse to set an extension on the wrong type of extensible.Gravatar Sadie Powell2022-01-311-0/+12
* Add the type to the Extensible class.Gravatar Sadie Powell2022-01-311-2/+3
* Rename the ExtensionItem::type field to extype to avoid collisions.Gravatar Sadie Powell2022-01-311-2/+2
* Fix various edge cases in extensible synchronisation.•••- Fix not forwarding the accountid extensible if it is set. - Rename the variadic Set() overload to SetFwd(). - Re-add the `const T&` overload of Set(). - Move `bool synced` to SimpleExtItem from StringExtItem. - Only sync extensibles if their instance is marked as syncable. Gravatar Sadie Powell2022-01-211-4/+3
* Revert "Allow setting extension data on connect classes".•••This can't reasonably be implemented safely with the current way that extensibles work. This reverts commit b867007d201b1a3b130186c54e41481c0374a7f6. Gravatar Sadie Powell2022-01-161-4/+0
* Allow setting extension data on connect classes.Gravatar Sadie Powell2022-01-161-0/+4
* Refactor CoreException and ModuleException.Gravatar Sadie Powell2022-01-071-1/+1
* Promote ExtensionItem::ExtensibleType to a top level enum class.Gravatar Sadie Powell2021-12-231-7/+7
* Migrate collections from insert to emplace.Gravatar Sadie Powell2021-04-181-1/+1
* Remove usecountbase from ExtensionItem and refer to using pointers.•••At one point (1.2?) this was actually useful but nowadays its not. Gravatar Sadie Powell2021-04-091-2/+2
* Fix a ton of pedantic compiler warnings.Gravatar Sadie Powell2021-04-041-4/+7
* Add support for syncing metadata set on memberships.•••No compat logic is required here as existing servers will just drop the unknown METADATA message when they can't find the target. Gravatar Sadie Powell2021-04-011-2/+1
* Add a subclass of ExtensionItem exclusively for booleans.Gravatar Sadie Powell2021-03-171-0/+59
* Implement support for automatically syncing extension items.Gravatar Sadie Powell2021-03-171-5/+33
* Move extensible code from base.cpp to extensible.cpp and cleanup.Gravatar Sadie Powell2021-03-171-0/+140
* Mark {From,To}{Human,Internal,Network} as noexcept.Gravatar Sadie Powell2021-03-171-8/+8
* Pascalize Unset in extension item classes.Gravatar Sadie Powell2021-03-171-2/+2
* Pascalize Set in extension item classes.Gravatar Sadie Powell2021-03-171-3/+3
* Pascalize Get in extension item classes.Gravatar Sadie Powell2021-03-171-1/+1
* Pascalize ExtensionItem::{get,set,unset}_raw.Gravatar Sadie Powell2020-07-201-4/+4
* Merge branch 'insp3' into master.Gravatar Sadie Powell2020-01-011-1/+1
* Replace LocalIntExt with IntExtItem.Gravatar Sadie Powell2019-08-131-0/+49
* Rewrite and merge LocalStringExt, StringExtItem.Gravatar Sadie Powell2019-08-131-0/+51