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