aboutsummaryrefslogtreecommitdiff
path: root/pkg/tbtables/selector/tcsshape.x
diff options
context:
space:
mode:
Diffstat (limited to 'pkg/tbtables/selector/tcsshape.x')
-rw-r--r--pkg/tbtables/selector/tcsshape.x24
1 files changed, 24 insertions, 0 deletions
diff --git a/pkg/tbtables/selector/tcsshape.x b/pkg/tbtables/selector/tcsshape.x
new file mode 100644
index 00000000..0a25ce2b
--- /dev/null
+++ b/pkg/tbtables/selector/tcsshape.x
@@ -0,0 +1,24 @@
+include "tcs.h"
+
+# TCS_SHAPE -- Shape of column array
+
+procedure tcs_shape (descrip, length, ndim, maxdimen)
+
+pointer descrip # i: column selector
+int length[ARB] # o: dimension lengths
+int ndim # o: number of dimensions
+int maxdimen # i: max number of dimensions
+#--
+int idim
+
+begin
+ ndim = TCS_DIMEN(descrip)
+ do idim = 1, ndim {
+ if (idim > maxdimen)
+ break
+
+ length[idim] = (((TCS_LAST(descrip,idim) -
+ TCS_FIRST(descrip,idim)) /
+ TCS_INC(descrip,idim)) + 1)
+ }
+end