[Dbix-class] compose_namespace & C3

Matt S Trout dbix-class at trout.me.uk
Tue Jul 11 20:27:18 CEST 2006


Christopher H. Laco wrote:
> I while back, knee deep in Handel-DBIC magicland, I was attempting to
> call class->load_components to inject components into a cloned schema.
> 
> It was slow as dirt because C# kept getting reinitialized. I tried
> several incantations of $TURN_OFF_C3 and uninitialize, and nothing
> helped the problem.
> 
> Then, while surfing through Schema.pm, I noticed this nugget in
> compose_namespace:
> 
> 
> {
>    local *Class::C3::reinitialize = sub { };
>    ...
> }
> Class::C3->reinitialize;
> 
> 
> How curious. I suspect that if I did the same, it would work as
> expected, rather than figthing $TURN_OF_C3.
> 
> 
> Can the creator of this magic shed any light on the matter?

I have a feeling I went through the same contortions and then said "sod it" 
and did that before I hit homicidal. It does, indeed, appear to work.

-- 
      Matt S Trout       Offering custom development, consultancy and support
   Technical Director    contracts for Catalyst, DBIx::Class and BAST. Contact
Shadowcat Systems Ltd.  mst (at) shadowcatsystems.co.uk for more information

+ Help us build a better perl ORM: http://dbix-class.shadowcatsystems.co.uk/ +



More information about the Dbix-class mailing list