Update of /cvsroot/monetdb/pathfinder/compiler/parser
In directory 23jxhf1.ch3.sourceforge.com:/tmp/cvs-serv14595/compiler/parser
Modified Files:
Tag: M5XQ
scanner.l
Log Message:
propagated changes of Thursday Nov 05 2009 - Monday Nov 09 2009
from the development trunk to the M5XQ branch
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2009/11/05 - singhan: compiler/parser/scanner.l,1.68
XQuery full-text search support initial version!
This initial version provides support to
-ftcontains keyword,
e.g., for $f in doc("menu.xml")//food[./name ftcontains "Belgian Waffles"]
return $f
The above query will return all the food nodes that has some relevancy over
"Belgian Waffles"
-initial score variable support
e.g., for $f score $s in doc("menu.xml")//food[./name ftcontains "Belgian
Waffles"]
return $s
The above query will return the relevancy score of all the matched food
nodes, however since its an initial version, the support to this score variable
is very limited.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Index: scanner.l
===================================================================
RCS file: /cvsroot/monetdb/pathfinder/compiler/parser/scanner.l,v
retrieving revision 1.66.4.1
retrieving revision 1.66.4.2
diff -u -d -r1.66.4.1 -r1.66.4.2
--- scanner.l 7 May 2009 14:47:12 -0000 1.66.4.1
+++ scanner.l 9 Nov 2009 00:04:38 -0000 1.66.4.2
@@ -531,7 +531,8 @@
"for"{_}"$" { gotoState (VARNAME); pf_yield
(for_dollar); }
-"let"{_}"$" { gotoState (VARNAME); pf_yield
(let_dollar); }
+"let" { pf_yield (let); }
+"score"{_}"$" { gotoState (VARNAME);
pf_yield (score_dollar);}
"some"{_}"$" { gotoState (VARNAME); pf_yield
(some_dollar); }
"every"{_}"$" { gotoState (VARNAME); pf_yield
(every_dollar);}
@@ -568,6 +569,7 @@
".." { gotoState (OPERATOR); pf_yield (dot_dot);
}
"." { gotoState (OPERATOR); pf_yield (dot); }
"*" { gotoState (OPERATOR); pf_yield (star); }
+"ftnot" { pf_yield (ftnot); }
{NCName}":*" { pflval.qname_raw
= PFqname_raw (PFstrndup (yytext,
yyleng));
@@ -707,7 +709,7 @@
"at"{_}"$" { gotoState (VARNAME); pf_yield
(at_dollar); }
"for"{_}"$" { gotoState (VARNAME); pf_yield
(for_dollar); }
-"let"{_}"$" { gotoState (VARNAME); pf_yield
(let_dollar); }
+"let" { pf_yield (let); }
"in" { gotoState (DEFAULT); pf_yield (in_); }
"seeded"{_}"by" { /* Pathfinder extension: recursion */
@@ -791,6 +793,12 @@
"before" { gotoState (DEFAULT); pf_yield (before);}
"with" { gotoState (DEFAULT); pf_yield (with);}
"modify" { gotoState (DEFAULT); pf_yield (modify);}
+"ftcontains" { gotoState (DEFAULT);
pf_yield (ftcontains);}
+"score"{_}"$" { gotoState (VARNAME);
pf_yield (score_dollar);}
+"without"{_}"content" { gotoState (DEFAULT); pf_yield
(without_content);}
+"ftor" { gotoState (DEFAULT); pf_yield (ftor);}
+"ftand" { gotoState (DEFAULT); pf_yield (ftand);}
+"not"{_}"in" { gotoState (DEFAULT); pf_yield
(ftmildnot);}
{_} ;
. { pf_yield (invalid_character); }
}
------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day
trial. Simplify your report design, integration and deployment - and focus on
what you do best, core application coding. Discover what's new with
Crystal Reports now. http://p.sf.net/sfu/bobj-july
_______________________________________________
Monetdb-pf-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-pf-checkins