package Squirrel::Template::Expr;
use strict;
-our $VERSION = "1.010";
+our $VERSION = "1.011";
package Squirrel::Template::Expr::Eval;
use Scalar::Util ();
$self->[TEXT] =~ s!\A(\s*/((?:[^/\\]|\\.)+)/([ismx]*\s)?\s*)!!) {
push @$queue, [ re => $1, $2, $3 || "" ];
}
- elsif ($self->[TEXT] =~ s/\A(\s*(not\b|eq\b|ne\b|le\b|lt\b|ge\b|gt\b|<=|>=|[!=]\=|\=\~|[_\?:,\[\]\(\)<>=!.*\/+\{\};\$-])\s*)//) {
+ elsif ($self->[TEXT] =~ s/\A(\s*(not\b|eq\b|ne\b|le\b|lt\b|ge\b|gt\b|<=|>=|[!=]\=|\=\~|!~|[_\?:,\[\]\(\)<>=!.*\/+\{\};\$-])\s*)//) {
push @$queue, [ "op$2" => $1 ];
}
elsif ($self->[TEXT] =~ s/\A(\s*([A-Za-z_][a-zA-Z_0-9]*)\s*)//) {
#!perl -w
# Basic tests for Squirrel::Template
use strict;
-use Test::More tests => 168;
+use Test::More tests => 170;
use HTML::Entities;
sub template_test($$$$;$$);
[ 'not 1 or 1', 1 ],
[ 'not 1 and 1', "" ],
[ '"xabcy" =~ /abc/', 1 ],
+ [ '"xabcy" !~ /abc/', "" ],
[ '[ "abc" =~ /(.)(.)/ ][1]', "b" ],
+ [ '"xabcy" !~ /abg/', 1 ],
[ '{ "a": 11, "b": 12, "c": 20 }["b"]', 12 ],
[ '[ 1, 2, 3 ][1]', 2 ],
[ 'testclass.foo', "[TestClass.foo]" ],