Revision history for Perl extension Hustle::Table 0.5.5 Wed 17 Aug 2022 15:14:43 AEST - Added subroutine matching type. A CODE ref can be used to match the input. Called with the input as the first argument and a reference to the entry value as the second element - Fixed bug where default matcher could not be updated with hash or array via the add method. An exuberant croak test/call prevented the adding of an entry when the matcher was 'undef'. An undef matcher actually represents the default matcher (match any). Prior to this fix only explicit set_default method would update default matcher. - Fixed documentation around required elements when adding via array ref should take 3 elements. Was listed as 6 - Reduced scope creation for more performance improvements 0.5.4 Thu 28 Jul 2022 21:40:32 AEST - Performance improvements - Dispatcher no longer returns an ref to an empty array with non regex matcher types. - Removed superfluous scope creation in dispatcher - Moved my variable out of dispatcher sub - Improved dispatch matching performance - 1.70x approx for static exact matches - 1.15x approx for regex matches 0.5.2 Wed 22 Jun 2022 07:42:37 AEST - Compatibility update for Template::Plex v0.4.2 0.5.1 Sat 2 Apr 2022 21:01:36 AEST - Bump min perl version to 5.26 for @{^CAPTURE} variable - Fixed issue where a cached entry did not return captures - Default matcher type is updated to undef to allow cached matcher to do regex match - Cleaned up tests 0.5.0 Thu 31 Mar 2022 20:15:33 AEST - Major rewrite - Simplified and restricted scope - Table entry stores any scalar value, not just code references - Regex, begin, end, exact and numeric matchers - Dispatcher returns matching table entry and regex captures - Caching always enabled. external management by user application 0.4.1 Mon 7 Mar 2022 17:27:52 AEST - Remove debugging output which should not have been active - Remove more unused code 0.4.0 Sat 5 Mar 2022 10:29:11 AEST - Removed usages of given/when and replaced with if/else/and in generated code - Matching is now always performed via a regex. - Uncached "online" dispatcher gained a 10-20% performance boost - Using Template::Plex template to make the code more readable - Removed unused code 0.3.0 Fri 10 Sep 2021 11:54:43 AEST - First argument to dispatched code ref is table entry not string being matched (< v0.2.3) - Updated test to utilise new first argument - Spelling fixes 0.2.3 Tue 3 Aug 2021 15:19:45 AEST - Added simple two element entry add - Constructor can take default handler directly - Spelling fixes 0.2.2 - Fix error in existing test script - Added more comprehensive tests - Check for valid cache (hash ref) when adding entry - Check for defined matcher when adding entry - Allow adding a 'flattened' entry (4 element) 0.2.1 Wed 23 Jun 2021 15:42:57 AEST - Attempting to fix Tester errors. - Updated min perl version => 5.24 - Added missing dep common::sense 0.2 Tue 22 Jun 2021 21:32:35 AEST - Spelling correction - Documentation formatting and fixes - Removal of unused exporting code - Adding missing dependencies on enum in Makefile.PL - Added MYMETA to distribution 0.1 Tue 22 Jun 2021 13:13:05 AEST - First release almost ready for CPAN