about summary refs log tree commit diff
path: root/transform/table.scm
diff options
context:
space:
mode:
authorMunyoki Kilyungi2023-08-21 15:03:20 +0300
committerMunyoki Kilyungi2023-08-21 15:06:06 +0300
commit8e1e4cceab516afab46ccced63ca9edab663ca11 (patch)
treecad625c3ecf0a555d7b56b777cdade535cb30d07 /transform/table.scm
parent51b3c0548c98e0bc05e11a89cbf6b75d31b9f8d5 (diff)
downloadgn-transform-databases-8e1e4cceab516afab46ccced63ca9edab663ca11.tar.gz
Rename dump -> transform
Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
Diffstat (limited to 'transform/table.scm')
-rw-r--r--transform/table.scm28
1 files changed, 28 insertions, 0 deletions
diff --git a/transform/table.scm b/transform/table.scm
new file mode 100644
index 0000000..e6254d0
--- /dev/null
+++ b/transform/table.scm
@@ -0,0 +1,28 @@
+(define-module (transform table)
+  #:use-module (srfi srfi-9 gnu)
+  #:export (make-table
+            table-name
+            table-size
+            table-columns
+            set-table-columns
+            make-column
+            column-name
+            column-type
+            column-transformed?))
+
+(define-immutable-record-type <table>
+  (make-table name size columns)
+  table?
+  (name table-name)
+  (size table-size)
+  (columns table-columns set-table-columns))
+
+(define-immutable-record-type <column>
+  (column-constructor name type transformed?)
+  column?
+  (name column-name)
+  (type column-type)
+  (transformed? column-transformed?))
+
+(define* (make-column name type #:optional transformed?)
+  (column-constructor name type transformed?))