[Catalyst] Small patch for ConfigLoader
Andreas Marienborg
omega at palle.net
Tue Apr 18 21:35:37 CEST 2006
On 18. apr. 2006, at 20.22, Brian Cassidy wrote:
> Hi Andreas,
>
>> -----Original Message-----
>>> I couldnt understand why __HOME__ was only alloved in the beginning
>>> of the strings, making it totaly useless for things like dbi driver
>>> strings (think dbd:SQLite:__HOME/db/ape.db), so I wrote a small
>>> patch to allow such constructs.
>>
>> its against current cpan for one, and it also kills a warning on
>> empty lines (which I like to add for readability)
>
> The latest SVN version already squashes the warnings. So, all
> that's left is
> allowing __HOME__ anywhere in the string. After chatting with mst
> on IRC a
> little bit, we've come up with a possible solution:
>
> Firstly, __HOME__ should not take any params. It will simple be
> replaced
> with the value of $c->path_to( '' );
>
> Secondly, there will be an alternate substitution that takes
> arguments:
> __path_to(db/ape.db)__ -- this will translate to $c->path_to( 'db',
> 'ape.db'
> );
>
> The code could look something like this:
>
> my $v = Data::Visitor::Callback->new(
> plain_value => sub {
> return unless defined $_;
> s[__HOME__][ $c->path_to( '' ) ]e;
> s[__path_to\((.+)\)__][ $c->path_to( split( '/', $1 ) ) ]e;
> }
> );
>
> Thoughts?
>
Fine by me, as long as __HOME__ works everywhere :)
andreas
More information about the Catalyst
mailing list