[open-ils-commits] r8845 - trunk/Open-ILS/src/perlmods/OpenILS/Application/Storage

svn at svn.open-ils.org svn at svn.open-ils.org
Sat Mar 1 11:44:51 EST 2008


Author: miker
Date: 2008-03-01 11:13:02 -0500 (Sat, 01 Mar 2008)
New Revision: 8845

Modified:
   trunk/Open-ILS/src/perlmods/OpenILS/Application/Storage/FTS.pm
Log:
moving default grammar to HEREDOC instead of DATA section

Modified: trunk/Open-ILS/src/perlmods/OpenILS/Application/Storage/FTS.pm
===================================================================
--- trunk/Open-ILS/src/perlmods/OpenILS/Application/Storage/FTS.pm	2008-03-01 05:43:04 UTC (rev 8844)
+++ trunk/Open-ILS/src/perlmods/OpenILS/Application/Storage/FTS.pm	2008-03-01 16:13:02 UTC (rev 8845)
@@ -6,8 +6,26 @@
 use OpenSRF::Utils::Logger qw/:level/;
 use Parse::RecDescent;
 
-my $_default_grammar_parser = new Parse::RecDescent ( join '', (<DATA>) );
+my $_default_grammar_parser = new Parse::RecDescent ( <<'GRAMMAR' );
 
+<autotree>
+
+search_expression: or_expr(s) | and_expr(s) | expr(s)
+or_expr: lexpr '||' rexpr
+and_expr: lexpr '&&' rexpr
+lexpr: expr
+rexpr: expr
+expr: phrase(s) | group(s) | word(s)
+joiner: '||' | '&&'
+phrase: '"' token(s) '"'
+group : '(' search_expression ')'
+word: numeric_range | negative_token | token
+negative_token: '-' .../\D+/ token
+token: /[-\w]+/
+numeric_range: /\d+-\d*/
+
+GRAMMAR
+
 sub compile {
 
 	$log->debug("You must override me somewhere, or I will make searching really slow!!!!",ERROR);;
@@ -95,6 +113,11 @@
 	return $self->{raw};
 }
 
+sub parse_tree {
+	my $self = shift;
+	return $self->{parsetree};
+}
+
 sub fts_col {
 	my $self = shift;
 	return $self->{fts_col};
@@ -222,20 +245,3 @@
 
 1;
 
-__DATA__
-<autotree>
-
-search_expression: or_expr(s) | and_expr(s) | expr(s)
-or_expr: lexpr '||' rexpr
-and_expr: lexpr '&&' rexpr
-lexpr: expr
-rexpr: expr
-expr: phrase(s) | group(s) | word(s)
-joiner: '||' | '&&'
-phrase: '"' token(s) '"'
-group : '(' search_expression ')'
-word: numeric_range | negative_token | token
-negative_token: '-' .../\D+/ token
-token: /[-\w]+/
-numeric_range: /\d+-\d*/
-



More information about the open-ils-commits mailing list