aboutsummaryrefslogtreecommitdiff
path: root/src/hyper/pages/STBL.ht
diff options
context:
space:
mode:
Diffstat (limited to 'src/hyper/pages/STBL.ht')
-rw-r--r--src/hyper/pages/STBL.ht62
1 files changed, 62 insertions, 0 deletions
diff --git a/src/hyper/pages/STBL.ht b/src/hyper/pages/STBL.ht
new file mode 100644
index 00000000..c3b1f79b
--- /dev/null
+++ b/src/hyper/pages/STBL.ht
@@ -0,0 +1,62 @@
+% Copyright The Numerical Algorithms Group Limited 1992-94. All rights reserved.
+% !! DO NOT MODIFY THIS FILE BY HAND !! Created by ht.awk.
+\newcommand{\SparseTableXmpTitle}{SparseTable}
+\newcommand{\SparseTableXmpNumber}{9.73}
+%
+% =====================================================================
+\begin{page}{SparseTableXmpPage}{9.73 SparseTable}
+% =====================================================================
+\beginscroll
+%
+The \spadtype{SparseTable} domain provides a general purpose
+table type with default entries.
+\xtc{
+Here we create a table to save strings under integer keys.
+The value \spad{"Try again!"} is returned if no other value has been
+stored for a key.
+}{
+\spadpaste{t: SparseTable(Integer, String, "Try again!") := table() \bound{t}}
+}
+\xtc{
+Entries can be stored in the table.
+}{
+\spadpaste{t.3 := "Number three" \free{t}\bound{t1}}
+}
+\xtc{
+}{
+\spadpaste{t.4 := "Number four" \free{t}\bound{t2}}
+}
+\xtc{
+These values can be retrieved as usual, but if a look up fails
+the default entry will be returned.
+}{
+\spadpaste{t.3 \free{t1}}
+}
+\xtc{
+}{
+\spadpaste{t.2 \free{t}}
+}
+\xtc{
+To see which values are explicitly stored, the
+\spadfunFrom{keys}{SparseTable} and \spadfunFrom{entries}{SparseTable}
+functions can be used.
+}{
+\spadpaste{keys t \free{t1 t2}}
+}
+\xtc{
+}{
+\spadpaste{entries t \free{t1 t2}}
+}
+If a specific table representation
+is required, the \spadtype{GeneralSparseTable} constructor should be used.
+The domain \spadtype{SparseTable(K, E, dflt)} is equivalent to
+\spadtype{GeneralSparseTable(K,E, Table(K,E), dflt)}.
+%-% \HDexptypeindex{GeneralSparseTable}{SparseTableXmpPage}{9.73}{SparseTable}
+For more information, see
+\downlink{`Table'}{TableXmpPage}\ignore{Table} and
+\downlink{`GeneralSparseTable'}{GeneralSparseTableXmpPage}\ignore{GeneralSparseTable}.
+\showBlurb{SparseTable}
+\endscroll
+\autobuttons
+\end{page}
+%