Dave Rolsky [Sun, 26 Sep 2010 19:12:22 +0000]
Refactored native trait accessors so they are done entirely in roles.
The class to do the inlining is generated based on the attribute's accessor &
delegation metaclasses, which means this works even when the attribute changes
those classes.
Added code to check if the attr's slot access can be inlined, and to use a
slower but working code path if it can't (see MX::AttributeTree for an example
of why this might be needed).
Dave Rolsky [Sun, 26 Sep 2010 16:50:02 +0000]
Remove extra newline
Dave Rolsky [Sun, 26 Sep 2010 16:27:58 +0000]
Handle uninlinable instance in native trait code generation
Dave Rolsky [Sun, 26 Sep 2010 16:25:20 +0000]
Add semi-colon in code that generates entire assignment, which makes snippets more flexible
Dave Rolsky [Sun, 26 Sep 2010 16:20:08 +0000]
More docs in Delta
Dave Rolsky [Sun, 26 Sep 2010 16:11:23 +0000]
No semi on potential value
Dave Rolsky [Sun, 26 Sep 2010 05:31:25 +0000]
Doc bug fix for weak ref set
Dave Rolsky [Sun, 26 Sep 2010 05:20:06 +0000]
Always get inlining code from meta-attr/class, never direct from meta-instance
Dave Rolsky [Sun, 26 Sep 2010 05:19:16 +0000]
When generating inline_store code, don't weaken non-ref value on set
Dave Rolsky [Sun, 26 Sep 2010 05:09:58 +0000]
Get inline slot access snippets from attr, not direct from meta-instance
Dave Rolsky [Sun, 26 Sep 2010 03:26:33 +0000]
Don't expect pod in MMMA::Native
Dave Rolsky [Sun, 26 Sep 2010 03:24:11 +0000]
Moved some inlining duties to Attribute class, which in turn delegates to meta-instance.
This makes it much easier for attributes from MX classes to change how
inlining is done, without having to change the Accessor generators.
Dave Rolsky [Sun, 26 Sep 2010 02:57:26 +0000]
Conflict with Fey 0.36
Dave Rolsky [Sun, 26 Sep 2010 02:45:57 +0000]
More Delta docs
Dave Rolsky [Sun, 26 Sep 2010 02:23:19 +0000]
Doc changes in Changes and Delta
Dave Rolsky [Sun, 26 Sep 2010 01:59:27 +0000]
Add tests for coercing native Hash trait
Dave Rolsky [Sat, 25 Sep 2010 23:23:40 +0000]
Add tests for triggers on a native Hash trait attr
Dave Rolsky [Sat, 25 Sep 2010 20:56:16 +0000]
Tests that various subtypes are enforced for hash types
Dave Rolsky [Sat, 25 Sep 2010 20:10:12 +0000]
Even more code path testing (add an empty trigger for all traits)
Dave Rolsky [Sat, 25 Sep 2010 20:08:26 +0000]
More tests for native traits to exercise all code paths
Dave Rolsky [Sat, 25 Sep 2010 20:08:17 +0000]
Remove superfluous argument passing
Dave Rolsky [Sat, 25 Sep 2010 20:07:48 +0000]
Rename _inline_copy_value so we don't accidentally reuse the version for non-native traits
Dave Rolsky [Sat, 25 Sep 2010 20:07:31 +0000]
Make sure potential value is a hash ref
Dave Rolsky [Sat, 25 Sep 2010 20:06:41 +0000]
Fix potential_value for string inc
Dave Rolsky [Sat, 25 Sep 2010 20:00:15 +0000]
Don't turn hash into array when copying the old hash value
Dave Rolsky [Sat, 25 Sep 2010 19:53:38 +0000]
More tests for Hash trait to ensure we test all code gen paths
Dave Rolsky [Sat, 25 Sep 2010 19:52:31 +0000]
Use _writer_core
Get _potential_value from set
Dave Rolsky [Sat, 25 Sep 2010 19:52:07 +0000]
Just use _writer_core for accessor
Get _potential_value from set class
Dave Rolsky [Sat, 25 Sep 2010 19:51:45 +0000]
More tests for array refs to make sure we test all code generation paths
Dave Rolsky [Sat, 25 Sep 2010 19:48:50 +0000]
Make sure accessor's writer side does what the writer code does
Dave Rolsky [Sat, 25 Sep 2010 19:43:54 +0000]
Fix potential value for set
Dave Rolsky [Sat, 25 Sep 2010 19:37:16 +0000]
Rename so each trait is in alpha order and we have room for multiple files per trait
Dave Rolsky [Sat, 25 Sep 2010 19:09:13 +0000]
Improve tests for Code trait
Dave Rolsky [Sat, 25 Sep 2010 19:00:10 +0000]
Add tests for argument checking with Number trait
Dave Rolsky [Sat, 25 Sep 2010 18:58:03 +0000]
Improve Bool trait tests
Dave Rolsky [Sat, 25 Sep 2010 18:54:25 +0000]
Test lazy default for String trait
Dave Rolsky [Sat, 25 Sep 2010 18:53:20 +0000]
Improve Number trait tests
Dave Rolsky [Sat, 25 Sep 2010 18:32:39 +0000]
More tests for Hash trait
Dave Rolsky [Sat, 25 Sep 2010 18:26:48 +0000]
Some tidying
Dave Rolsky [Sat, 25 Sep 2010 18:26:16 +0000]
More tests for Counter trait
Dave Rolsky [Sat, 25 Sep 2010 18:17:41 +0000]
s/page/foo/g
Dave Rolsky [Sat, 25 Sep 2010 18:17:10 +0000]
Improve tests for Counter trait
Dave Rolsky [Fri, 24 Sep 2010 16:19:37 +0000]
Remove code that handled method providers now that all native traits use inlining
Dave Rolsky [Fri, 24 Sep 2010 16:16:50 +0000]
Load accessor generator
Dave Rolsky [Fri, 24 Sep 2010 16:15:59 +0000]
Make array accessor follow same pattern as hash accessor
Dave Rolsky [Fri, 24 Sep 2010 16:15:26 +0000]
Make hash accessor actually work
Dave Rolsky [Fri, 24 Sep 2010 16:09:00 +0000]
Remove all references to method providers
Dave Rolsky [Fri, 24 Sep 2010 16:06:18 +0000]
Add more test for Counter type
Dave Rolsky [Thu, 23 Sep 2010 22:39:32 +0000]
Don't expect docs for all the Native::* accessor modules
Dave Rolsky [Thu, 23 Sep 2010 22:08:21 +0000]
make sure all modules have the same version
Dave Rolsky [Thu, 23 Sep 2010 21:58:57 +0000]
Got inlining for hashes working.
Lots of refactoring to push code to a shared collection mini-trait used for
hashes & arrays, since the inlining code for the two is _really_ similar.
Dave Rolsky [Thu, 23 Sep 2010 17:18:17 +0000]
Fix potential value for clear
Dave Rolsky [Wed, 22 Sep 2010 22:21:29 +0000]
Add inlining methods for Number native trait
Dave Rolsky [Wed, 22 Sep 2010 22:15:00 +0000]
Calculate _native_type from role name, rather than hardcoding it
Dave Rolsky [Wed, 22 Sep 2010 21:58:47 +0000]
Inline all Counter methods
Dave Rolsky [Wed, 22 Sep 2010 21:49:23 +0000]
Moved even more code up to Native/Writer
Dave Rolsky [Tue, 21 Sep 2010 18:41:33 +0000]
Move even more code up to parent
Dave Rolsky [Tue, 21 Sep 2010 18:40:44 +0000]
Move more code up to the Native/Writer class
Dave Rolsky [Tue, 21 Sep 2010 18:39:16 +0000]
No need to duplicate code in parent class
Dave Rolsky [Tue, 21 Sep 2010 18:31:59 +0000]
Add inling for native Code trait
Dave Rolsky [Tue, 21 Sep 2010 18:28:19 +0000]
Whitespace tweak
Dave Rolsky [Tue, 21 Sep 2010 18:22:04 +0000]
Inlining for native Bool trait
Dave Rolsky [Tue, 21 Sep 2010 18:19:26 +0000]
Remove another empty class in the native array inheritance hierarchy
Dave Rolsky [Tue, 21 Sep 2010 18:13:46 +0000]
Move some code to Native/Writer since it is the same for all native types
Dave Rolsky [Tue, 21 Sep 2010 17:57:22 +0000]
Remove some empty classes in the String hierarchy
Dave Rolsky [Tue, 21 Sep 2010 05:00:31 +0000]
Refactored native trait inlining some more - added an optimized path to avoid copying data whenever possible
Dave Rolsky [Mon, 20 Sep 2010 22:17:10 +0000]
Add tests for coercion with native traits
Dave Rolsky [Mon, 20 Sep 2010 21:41:19 +0000]
pushing onto undef should (and does) work
This works (under strict/warnings with no warning output)
my $x;
push @{$x}, 1;
Dave Rolsky [Mon, 20 Sep 2010 17:31:56 +0000]
Implemented inlning for all string methods.
Lots of refactoring to existing native trait inlining code to share more between different types.
Dave Rolsky [Mon, 20 Sep 2010 00:09:01 +0000]
Add some whitespace
Dave Rolsky [Sun, 19 Sep 2010 01:29:43 +0000]
Just use Test::Moose
Dave Rolsky [Sat, 18 Sep 2010 16:40:21 +0000]
Lots of refactoring to move native trait reader/writer code into base classes shareable by all native types
Dave Rolsky [Sat, 18 Sep 2010 16:18:38 +0000]
Move some code from Array to Native since it will be shared by many native accessors
Dave Rolsky [Sat, 18 Sep 2010 16:11:24 +0000]
Add some tests for trigger on array changes
Dave Rolsky [Sat, 18 Sep 2010 16:06:52 +0000]
Remove useless load test and renumber other tests so this dir looks like other test dirs
Dave Rolsky [Sat, 18 Sep 2010 04:02:10 +0000]
Tidy all code
Dave Rolsky [Sat, 18 Sep 2010 04:02:03 +0000]
More TC handling fixes
Dave Rolsky [Sat, 18 Sep 2010 04:01:18 +0000]
Fix undef warning
Dave Rolsky [Sat, 18 Sep 2010 01:43:46 +0000]
Copy the potential value if needed so we don't have to regenerate it over and over.
Fix checking the overall constraint so it actually works.
Dave Rolsky [Sat, 18 Sep 2010 01:42:35 +0000]
Get these tests all passing (no more TODO)
Dave Rolsky [Fri, 17 Sep 2010 23:19:50 +0000]
Add some "bridge code" to keep old and new native traits all working
Doing this so I can profile just the arrayref changes.
Dave Rolsky [Fri, 17 Sep 2010 23:19:43 +0000]
If the parent type is ArrayRef and the type itself is also parameterizable, we need to check the whole type, not just members.
Dave Rolsky [Fri, 17 Sep 2010 20:55:36 +0000]
Never use die in generate code when throwing an error.
The meta error throwing makes a more verbose message, but the stack trace is
much more useful than "at generated method x"
Improve error messages from generated methods.
Dave Rolsky [Fri, 17 Sep 2010 20:42:52 +0000]
Fix warnings
Dave Rolsky [Fri, 17 Sep 2010 20:41:15 +0000]
Add tests for natatime_curried
Dave Rolsky [Fri, 17 Sep 2010 20:39:36 +0000]
All native array methods are being inlined.
All native methods are tested
Dave Rolsky [Wed, 15 Sep 2010 20:01:34 +0000]
All of the non-mutating array helpers are now inlined.
Made sure we had tests for all of them, including tests for failure cases.
Dave Rolsky [Wed, 15 Sep 2010 17:03:36 +0000]
Actually unshift curried args into @_
Dave Rolsky [Wed, 15 Sep 2010 17:02:26 +0000]
Put curried args into closed-over environment.
Fix first to do what it's supposed to.
Just push curried args onto the front of @_ for simplicity.
Dave Rolsky [Wed, 15 Sep 2010 17:02:01 +0000]
Move all array helper tests into one .t file
Dave Rolsky [Wed, 15 Sep 2010 01:34:18 +0000]
Work in progress on inlining native traits methods.
So far, so good, but we need to have much better tests, and tests need some
serious cleanup too.
Dave Rolsky [Tue, 14 Sep 2010 20:44:06 +0000]
Some small code cleanups before I start changing everything
Dave Rolsky [Fri, 24 Sep 2010 03:44:16 +0000]
Remove some debugging cruft I left in
Dave Rolsky [Tue, 21 Sep 2010 05:01:53 +0000]
bump version to 1.14
Dave Rolsky [Tue, 21 Sep 2010 05:01:27 +0000]
Add release date
Florian Ragwitz [Sun, 19 Sep 2010 17:31:07 +0000]
Don't rely on qw() providing PAREN tokens
Jay Hannah [Wed, 15 Sep 2010 19:23:58 +0000]
Tiny POD clarification. 'pairs' too ambiguous.
Dave Rolsky [Tue, 14 Sep 2010 16:19:10 +0000]
Bug fixes for next
Dave Rolsky [Tue, 14 Sep 2010 16:18:09 +0000]
Fix weird bug that is probably a bug in List::MoreUtils
Dave Rolsky [Mon, 13 Sep 2010 22:18:29 +0000]
bump version to 1.13