5 use Test::More tests => 10;
7 sub my_quote($) { $_[0] }
10 my($declarator, $offset) = @_;
11 $offset += Devel::Declare::toke_move_past_token($offset);
12 $offset += Devel::Declare::toke_skipspace($offset);
13 my $len = Devel::Declare::toke_scan_str($offset);
14 my $content = Devel::Declare::get_lex_stuff();
15 Devel::Declare::clear_lex_stuff();
16 my $linestr = Devel::Declare::get_linestr();
17 die "surprising len=undef" if !defined($len);
18 die "surprising len=$len" if $len <= 0;
19 $content =~ s/(.)/sprintf("\\x{%x}", ord($1))/seg;
20 substr $linestr, $offset, $len, "(\"$content\")";
21 Devel::Declare::set_linestr($linestr);
25 Devel::Declare->setup_for(__PACKAGE__, {
26 my_quote => { const => \&my_quote_parser },
53 is $x, "foo\nbar baz quux";
57 is $x, "foo\nbar baz quuux";
61 is $x, "foo\nbar baz quuuux";
65 is $x, "foo\nbar baz quux wibble";
70 is $x, "foo\nquux\nwomble";