Update of /cvsroot/monetdb/pathfinder/compiler/sql
In directory sc8-pr-cvs7.sourceforge.net:/tmp/cvs-serv25300/compiler/sql

Modified Files:
        lalg2sql.brg 
Log Message:
modification of string join operator


Index: lalg2sql.brg
===================================================================
RCS file: /cvsroot/monetdb/pathfinder/compiler/sql/lalg2sql.brg,v
retrieving revision 1.28
retrieving revision 1.29
diff -u -d -r1.28 -r1.29
--- lalg2sql.brg        9 Feb 2007 08:08:58 -0000       1.28
+++ lalg2sql.brg        9 Feb 2007 14:01:20 -0000       1.29
@@ -202,7 +202,6 @@
 Rel:    type (Rel)                                =  54 (10);
 Rel:    type_assert (Rel)                         =  55 (10);
 Rel:    cast (cast (Rel))                         =  56 (10);
-Rel:    cast (project (cast (Rel)))               =  57 (10);
 Rel:    cast (Rel)                                =  58 (10);
 Rel:    seqty1 (Rel)                              =  59 (10);
 Rel:    all (Rel)                                 =  60 (10);
@@ -525,7 +524,8 @@
     assert (ty == aat_nat || ty == aat_int ||
             ty == aat_str || ty == aat_bln ||
             ty == aat_pre || ty == aat_qname ||
-            ty == aat_dec);
+            ty == aat_dec || ty == aat_uA ||
+            ty == aat_dbl);
 
     *(sql_column_env_t*)PFarray_add (env) = (sql_column_env_t) {
         .type = ty,
@@ -2305,11 +2305,35 @@
                  p->dirty = true;
 
         } break;
-        /* FIXME stringjoin is false */
         /* Rel:   string_join (Rel, Rel) */
         case 88:
+        {
         /* even string_join is implemented as identity operator,
          * so it will handle most of the queries */
+         sql_column_env_add (p->sql_ann->colmap,
+                 p->sem.string_join.iter_res,
+                 type_of (p, p->sem.string_join.iter_res),
+                 sql_expression (R(p)->sql_ann->colmap,
+                     p->sem.string_join.iter_sep,
+                     type_of (R(p), p->sem.string_join.iter_sep))
+                 );
+
+         sql_column_env_add (p->sql_ann->colmap,
+                 p->sem.string_join.item_res,
+                 type_of (p, p->sem.string_join.item_res),
+                 sql_expression (R(p)->sql_ann->colmap,
+                     p->sem.string_join.item_sep,
+                     type_of (R(p), p->sem.string_join.item_sep))
+                 );
+         
+         sql_stmt = select
+             (
+              NULL,
+              from_list (R(p)->sql_ann->sfw->sem.select.from_list),
+              NULL,
+              NULL
+             );
+        } break;
         /* FragRel:  merge_adjacent (Frag, Rel) */
         case 107:
         {
@@ -2904,7 +2928,8 @@
     assert ( ty == type_of(L(p), p->sem.binary.att1));
     assert ( ty == aat_int || ty == aat_dec ||
             ty == aat_dbl || ty == aat_str ||
-            ty == aat_bln);
+            ty == aat_bln || ty == aat_nat ||
+            ty == aat_qname || aat_pre);
     return bin_cmp (op, p, ty);
 }
 


-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier.
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Monetdb-pf-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-pf-checkins

Reply via email to