Changeset: dfe215052f70 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=dfe215052f70
Modified Files:
        sql/src/common/sql_stack.c
        sql/src/include/sql_stack.h
Branch: default
Log Message:

missing files


diffs (67 lines):

diff -r e43c907a644b -r dfe215052f70 sql/src/common/sql_stack.c
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/sql/src/common/sql_stack.c        Thu Dec 02 10:44:28 2010 +0100
@@ -0,0 +1,33 @@
+
+#include "sql_config.h"
+#include <sql_stack.h>
+
+sql_stack *
+sql_stack_new(sql_allocator *sa, int size)
+{
+       sql_stack *s = SA_NEW(sa, sql_stack);
+
+       s -> sa = sa;
+       s -> size = size;
+       s -> top = 0;
+       s -> values = SA_NEW_ARRAY(sa, void*, size); 
+       s -> values[s->top++] = NULL; 
+       return s;
+}
+
+void 
+sql_stack_push(sql_stack *s, void *v)
+{
+       if (s->top >= s->size) {
+               size_t osz = s->size;
+               s->size *= 2;
+               s->values = SA_RENEW_ARRAY(s->sa, void*, s->values, s->size, 
osz);
+       }
+       s->values[s->top++] = v;
+}
+
+void *
+sql_stack_pop(sql_stack *s)
+{
+       return s->values[--s->top];
+}
diff -r e43c907a644b -r dfe215052f70 sql/src/include/sql_stack.h
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/sql/src/include/sql_stack.h       Thu Dec 02 10:44:28 2010 +0100
@@ -0,0 +1,26 @@
+#ifndef SQL_STACK_H
+#define SQL_STACK_H
+
+/* sql_stack implementation 
+ * used by mvc structure for variable stack    
+ *                          trigger stack
+ *                          Multi statement stack (intermediate results)
+ *                          ....
+ *                          stmt generation
+ *                          stmt dependency (close to stmt generation)
+ */
+
+#include <sql_mem.h>
+
+typedef struct sql_stack {
+       sql_allocator *sa;
+       int size;
+       int top;
+       void **values;
+} sql_stack;
+
+extern sql_stack *sql_stack_new(sql_allocator *sa, int size);
+extern void sql_stack_push(sql_stack *s, void *v);
+extern void *sql_stack_pop(sql_stack *s);
+
+#endif /* SQL_STACK_H */
_______________________________________________
Checkin-list mailing list
[email protected]
http://mail.monetdb.org/mailman/listinfo/checkin-list

Reply via email to