Update of /cvsroot/monetdb/pathfinder/compiler/include
In directory sc8-pr-cvs16.sourceforge.net:/tmp/cvs-serv20201/compiler/include

Modified Files:
        logical.h logical_mnemonic.h 
Log Message:
Basic Algebra implementation for the fn:error functions (32 files edited).
Introduced a new operator on the logical level, namely la_error.
Operator la_error takes a BAT of strings as parameter (containing the error
message) and carry it all the way until the MIL level where the conditions are
checked and the mil if-statement is printed.

Disclaimer:
Most likely the switch-case clauses on the prop/ and opt/ directories
are not always treated correctly for the la_error operator, but a man has
to start from somewhere.


Index: logical_mnemonic.h
===================================================================
RCS file: /cvsroot/monetdb/pathfinder/compiler/include/logical_mnemonic.h,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -d -r1.29 -r1.30
--- logical_mnemonic.h  6 Dec 2007 08:42:36 -0000       1.29
+++ logical_mnemonic.h  10 Dec 2007 15:10:04 -0000      1.30
@@ -198,6 +198,9 @@
 #define empty_frag()      PFla_empty_frag ()
 
 /* conditional error operator */
+#define error(a) PFla_error ((a))
+
+/* conditional error operator */
 #define cond_err(a,b,c,d) PFla_cond_err ((a),(b),(c),(d))
 
 #define nil() PFla_nil ()

Index: logical.h
===================================================================
RCS file: /cvsroot/monetdb/pathfinder/compiler/include/logical.h,v
retrieving revision 1.46
retrieving revision 1.47
diff -u -d -r1.46 -r1.47
--- logical.h   6 Dec 2007 22:41:33 -0000       1.46
+++ logical.h   10 Dec 2007 15:10:04 -0000      1.47
@@ -145,7 +145,8 @@
     , la_frag_union      = 72 /**< special node type used to form an algebraic
                                    union of fragments */
     , la_empty_frag      = 73 /**< representation of an empty fragment */
-                             
+          
+    , la_error           = 79 /**< error operator for the fn:error function*/
     , la_cond_err        = 80 /**< facility to trigger runtime errors */
     , la_nil             = 81 /**< end of the list of parameters */
     , la_trace           = 82 /**< debug operator */
@@ -1072,6 +1073,11 @@
 /****************************************************************/
 
 /**
+ * Constructor for error
+ */
+PFla_op_t * PFla_error (const PFla_op_t *n);
+
+/**
  * Constructor for conditional error
  */
 PFla_op_t * PFla_cond_err (const PFla_op_t *n, const PFla_op_t *err,


-------------------------------------------------------------------------
SF.Net email is sponsored by: 
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
Monetdb-pf-checkins mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/monetdb-pf-checkins

Reply via email to