Update of /cvsroot/monetdb/pathfinder/compiler/include
In directory 23jxhf1.ch3.sourceforge.com:/tmp/cvs-serv9451/compiler/include

Modified Files:
        plan_bundle.h 
Log Message:
-- Added generic properties-support for plan-bundles. A (algebraic- or 
sql-code-) plan-bundle now can have some meta-data attached in the form of an 
arbitrary amount of arbitrarily nestable properties (key-value pairs). Such 
properties are totally ignored by pathfinder itself, but they can be used to 
carry some specific information from the input-data to the output-data.

U plan_bundle.h
Index: plan_bundle.h
===================================================================
RCS file: /cvsroot/monetdb/pathfinder/compiler/include/plan_bundle.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -d -r1.1 -r1.2
--- plan_bundle.h       8 May 2009 06:14:57 -0000       1.1
+++ plan_bundle.h       31 Jul 2009 13:06:21 -0000      1.2
@@ -41,13 +41,23 @@
 
 /** Logical algebra plan bundle item */
 struct PFla_pb_item_t {
-    PFla_op_t *op;     /**< the logical algebra plan */
-    int        id;     /**< the id of the plan */
-    int        idref;  /**< the reference to the parent plan */
-    int        colref; /**< the column reference to the parent plan */
+    PFla_op_t * op;         /**< the logical algebra plan */
+    int         id;         /**< the id of the plan */
+    int         idref;      /**< the reference to the parent plan */
+    int         colref;     /**< the column reference to the parent plan */
+    PFarray_t* properties; /**< properties of the logical algebra plan */
 };
 typedef struct PFla_pb_item_t PFla_pb_item_t;
 
+/** A property of a Logical algebra plan bundle item  */
+struct PFla_pb_item_property_t {
+    char*              name;       /**< property name  */
+    char*              value;      /**< property value */
+    PFarray_t* properties; /**< sub properties */
+};
+typedef struct PFla_pb_item_property_t PFla_pb_item_property_t;
+
+
 /** A list of columns (actually: column names) */
 #define PFla_pb_t               PFarray_t
 /** Constructor for a column list */
@@ -62,10 +72,11 @@
 /** Size of a column list */
 #define PFla_pb_size(pb)        PFarray_last ((pb))
 
-#define PFla_pb_op_at(pb,i)     (PFla_pb_at(pb,i)).op
-#define PFla_pb_id_at(pb,i)     (PFla_pb_at(pb,i)).id
-#define PFla_pb_idref_at(pb,i)  (PFla_pb_at(pb,i)).idref
-#define PFla_pb_colref_at(pb,i) (PFla_pb_at(pb,i)).colref
+#define PFla_pb_op_at(pb,i)         (PFla_pb_at(pb,i)).op
+#define PFla_pb_id_at(pb,i)         (PFla_pb_at(pb,i)).id
+#define PFla_pb_idref_at(pb,i)      (PFla_pb_at(pb,i)).idref
+#define PFla_pb_colref_at(pb,i)     (PFla_pb_at(pb,i)).colref
+#define PFla_pb_properties_at(pb,i) (PFla_pb_at(pb,i)).properties
 
 #endif  /* PLAN_BUNDLE_H */
 


------------------------------------------------------------------------------
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

Reply via email to