summaryrefslogtreecommitdiff
path: root/src/SMAPI/Framework/Events/ManagedEvent.cs
AgeCommit message (Collapse)Author
2022-05-15reduce performance impact of deprecation warningsJesse Plamondon-Willard
Creating a stack is *very* slow, so it should be avoided if possible until after the duplicate-warning check.
2022-05-11replace event.HasListeners() with propertyJesse Plamondon-Willard
2022-05-11move filtering only used in one place out of managed eventJesse Plamondon-Willard
2022-05-11optimize raising events for the most common casesJesse Plamondon-Willard
2022-05-10remove unused IsPerformanceCritical event fieldJesse Plamondon-Willard
2022-04-13enable nullable annotations in SMAPI where no logic changes are needed (#837)Jesse Plamondon-Willard
2022-04-06enable nullable annotations by default (#837)Jesse Plamondon-Willard
This adds `#nullable disable` to all existing code (except where null is impossible like enum files), so it can be migrated incrementally.
2022-04-06use target-typed newJesse Plamondon-Willard
2022-03-23add initial AssetRequested content event (#766)Jesse Plamondon-Willard
2022-03-22reduce duplicated doc blocksJesse Plamondon-Willard
2022-02-11use Array.Empty to avoid unneeded array allocationsJesse Plamondon-Willard
2021-07-30migrate to the new Harmony patch pattern used in my modsJesse Plamondon-Willard
That improves validation and error-handling.
2021-01-06remove experimental performance countersJesse Plamondon-Willard
Unfortunately this impacted SMAPI's memory usage and the data was often misinterpreted by players.
2020-08-09fix error when mods add/remove events asynchronouslyJesse Plamondon-Willard
2020-07-21fix error when a mod adds/remove an event handler while handling the eventJesse Plamondon-Willard
2020-06-16improve new event codeJesse Plamondon-Willard
This commit... * debounces the has-custom-priorities check; * fixes collection-modified-during-enumeration errors if an event handler is added or removed while the event is being raised; * fixes Remove(handler) removing all instances of the handler instead of the last one.
2020-06-15merge inconsistent event raise methodsJesse Plamondon-Willard
2020-06-15refactor & optimize event code a bit, drop old support for unknown event ↵Jesse Plamondon-Willard
handlers
2020-06-15Implemented event priority attributeChase W
2020-01-26tweak namespaceJesse Plamondon-Willard
2020-01-26refactor performance counter codeJesse Plamondon-Willard
This commit performs some general refactoring, including... - avoid manually duplicating the event list; - rework the 'is important' event flag; - remove the new packages (Cyotek.Collections can be replaced with built-in types, and System.ValueTuple won't work in the Mono version used on Linux/Mac); - improve performance; - minor cleanup.
2020-01-15Added documentation for all commands. Renamed the "monitor" command to ↵Drachenkaetzchen
"trigger". Method name refactoring to be more consistent.
2020-01-11Reworked the console implementation, added monitoring. Some internal ↵Drachenkaetzchen
refactoring.
2020-01-10Moved most PerformanceCounter logic out of SCore into the new ↵Drachenkaetzchen
PerformanceCounterManager, some namespace refactoring
2020-01-10Initial commit of the performance countersDrachenkaetzchen
2019-09-14remove deprecated APIs (#606)Jesse Plamondon-Willard
2018-12-27tweak comment header conventionJesse Plamondon-Willard
2018-12-25minor performance optimisationJesse Plamondon-Willard
2018-11-03add APIs to send/receive messages in multiplayer (#480)Jesse Plamondon-Willard
2018-05-31move location events into new event system (#310)Jesse Plamondon-Willard
2018-02-23overhaul events to track the mod which added each handler, and log errors ↵Jesse Plamondon-Willard
under their name (#451)