[Jifty-commit] r5729 - Jifty-DBI/branches/tisql/lib/Jifty/DBI
Jifty commits
jifty-commit at lists.jifty.org
Sat Aug 16 07:05:35 EDT 2008
Author: ruz
Date: Sat Aug 16 07:05:34 2008
New Revision: 5729
Modified:
Jifty-DBI/branches/tisql/lib/Jifty/DBI/Tisql.pm
Log:
* add new REs to implement place holders
Modified: Jifty-DBI/branches/tisql/lib/Jifty/DBI/Tisql.pm
==============================================================================
--- Jifty-DBI/branches/tisql/lib/Jifty/DBI/Tisql.pm (original)
+++ Jifty-DBI/branches/tisql/lib/Jifty/DBI/Tisql.pm Sat Aug 16 07:05:34 2008
@@ -9,14 +9,20 @@
use Data::Dumper;
use Regexp::Common qw(delimited);
-my $re_delim = qr{$RE{delimited}{-delim=>qq{\'\"}}};
-my $re_field = qr{[a-zA-Z][a-zA-Z0-9_]*};
-my $re_column = qr{\.?$re_field(?:\.$re_field)*};
-my $re_alias = qr{$re_column\s+AS\s+$re_field}i;
+my $re_delim = qr{$RE{delimited}{-delim=>qq{\'\"}}};
+my $re_field = qr{[a-zA-Z][a-zA-Z0-9_]*};
+my $re_alias_name = $re_field;
+my $re_ph = qr{_[1-9][0-9]+_};
+
+my $re_value = qr{$re_delim|[0-9.]+};
+my $re_value_ph = qr{$re_value|$re_ph};
+my $re_cs_values = qr{$re_value(?:\s*,\s*$re_value)*};
+my $re_ph_access = qr{{\s*(?:$re_cs_values|$re_ph)?\s*}};
+my $re_column = qr{$re_alias_name?(?:\.$re_field$re_ph_access?)+};
+my $re_alias = qr{$re_column\s+AS\s+$re_alias_name}i;
+
my $re_sql_op_bin = qr{!?=|<>|>=?|<=?|(?:NOT )?LIKE}i;
my $re_sql_op_un = qr{IS (?:NOT )?NULL}i;
-my $re_value = qr{$re_delim|[0-9.]+};
-
my $re_positive_op = qr/^(?:=|IS|LIKE)$/i;
my $re_negative_op = qr/^(?:!=|<>|NOT LIKE)$/i;
my %invert_op = (
More information about the Jifty-commit
mailing list