Introduce DBIC-specific method attribute support
authorPeter Rabbitson <ribasushi@cpan.org>
Wed, 25 May 2016 09:44:20 +0000 (11:44 +0200)
committerPeter Rabbitson <ribasushi@cpan.org>
Mon, 30 May 2016 14:44:28 +0000 (16:44 +0200)
commit5ab7259324b6e3d0feea533239b6d77db0b28c9c
treedc405471ea0ab05eec13bc8e8e64c4f040056eb6
parent5f48fa565dc31b9d22762488afdec8502b8ca515
Introduce DBIC-specific method attribute support

When attribute support was added back in ed28f830 it was done in a weird
roundabout manner, with the only way to access the attributes via a chained
class accessor __attr_cache hidden behind a cascading method _attr_cache.

This is wasteful and rather inelegant. To mitigate this, and the propensity
of DBIC to eat any attribute it can lay its hands on, introduce special
handling for attributes prefixed with DBIC_

Any such attributes are handled by a much simpler storage system, and are
not made available to the legacy _attr_cache interface.
lib/DBIx/Class/MethodAttributes.pm
xt/dist/pod_coverage.t
xt/extra/internals/attributes.t