summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/latex/readarray/readarray.tex
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/doc/latex/readarray/readarray.tex')
-rw-r--r--Master/texmf-dist/doc/latex/readarray/readarray.tex52
1 files changed, 23 insertions, 29 deletions
diff --git a/Master/texmf-dist/doc/latex/readarray/readarray.tex b/Master/texmf-dist/doc/latex/readarray/readarray.tex
index e4036d7faff..85081ab4359 100644
--- a/Master/texmf-dist/doc/latex/readarray/readarray.tex
+++ b/Master/texmf-dist/doc/latex/readarray/readarray.tex
@@ -1,5 +1,5 @@
\documentclass{article}
-\def\version{1.1}
+\def\version{1.2}
%% Copyright 2013 Steven B. Segletes
%
% This work may be distributed and/or modified under the
@@ -16,6 +16,10 @@
% Revisions:
% v1.01 Documentation revision
% v1.1 Added \csname record\roman{@row}\endcsname to \readdef
+% v1.2 -Corrected the [truncated] LPPL license info
+% -Added \arrayij and \arrayijk, which can be put into \edef
+% -Used \romannumeral in preference to \roman{}, when possible,
+% to avoid unnecessary use of counters.
\parskip 1em
\parindent 0em
@@ -59,6 +63,9 @@ commands are:\\\itshape
\rl\vb|\readArrayijk{|token\vb|}{|identifier\vb|}{|rows\vb|}{|columns\vb|}|\\
\rl\vb|\Arrayij[|error\vb|]{|identifier\vb|}{|row\vb|}{|column\vb|}|\\
\rl\vb|\Arrayijk[|error\vb|]{|identifier\vb|}{|plane\vb|}{|row\vb|}{|%
+ column\vb|}|\\
+\rl\vb|\arrayij{|identifier\vb|}{|row\vb|}{|column\vb|}|\\
+\rl\vb|\arrayijk{|identifier\vb|}{|plane\vb|}{|row\vb|}{|%
column\vb|}|\upshape
Several strings of fixed name are defined through the use of this
@@ -89,6 +96,12 @@ the following:\\\itshape
\rl\vb|\showargs[|number\vb|]|\\\upshape
\rl\vb|\def\converttilde{|T or F\vb|}|\upshape
+\begin{center}
+\vfill
+[\textsc{This Space Intentionally Left Blank}]
+\vfill
+\end{center}
+\clearpage
\section{Data Structure}
The first requirement is to lay out a format for the data interface to
@@ -233,7 +246,6 @@ array of data. Its use accomplishes two things: 1) it allows records
the most recently read file data into its own data structure, so that it
is not overwritten by a subsequent invocation of \verb|\readdef|.
-\clearpage
\subsection{Creating 3-D Arrays}
For the 3-D case, \vb|\readArrayijk|\margcmd{readArrayijk} takes an
@@ -395,8 +407,7 @@ an array element is asked for which falls outside the array bounds.
Like \verb|\showrecord|, the \verb|\Arrayij| and \verb|\Arrayijk|
commands also employ bounds checking. These commands check for
four error conditions that, by default, produce the following error
-messages:
-
+messages:\\
\rl\Arrayijk{tobeConjugation}{-3}{2}{4}\\
\rl\Arrayijk{tobeConjugation}{9}{2}{4}\\
\rl\Arrayijk{tobeConjugation}{3}{9}{4}\\
@@ -416,31 +427,14 @@ The\verb|\Arrayij| and \verb|\Arrayijk| commands may, of course, be
placed as arguments of \verb|\def| commands. They, cannot, however, be
placed into an \verb|\edef|. If the user has need to place the
array-element content into an \verb|\edef| (and assuming that the
-actual array-element content is suitable for an \verb|\edef|), the
-following approach may be employed. The contents of an array which
-would otherwise be accessed by the command
-{\itshape\vb|\Arrayij{|identifier\vb|}{|row\vb|}{|column\vb|}|\upshape}
-can be accessed directly with the command
-``\itshape\vb|\|identifier\vb|X|roman-row\vb|X|roman-column\upshape'',
-where \textit{roman-row} and \textit{roman-column} indicate that the row
-and column numbers are expressed in lower-case roman numerals. Thus,
-even if \textit{row} and/or \textit{column} are obtained by way of a
-mathematical calculation, they can be placed into an \verb|\edef| token
-using the following syntax:\\
- \rl\itshape\vb|\edef\tokenname{\csname %|\\
- \rl\rl\rl identifier\vb|X\roman{|row\vb|}X\roman{|column%
- \vb|}\endcsname}|\upshape\\
-For 3-D arrays, the corresponding command is
-``\itshape\vb|\|identifier\vb|X|roman-plane\vb|X|roman-row\vb|X|%
- roman-column\upshape''.
-Therefore, the \verb|\edef| may be accomplished via\\
- \rl\itshape\vb|\edef\tokenname{\csname %|\\
- \rl\rl\rl identifier\vb|X\roman{|plane\vb|}X\roman{|row\vb|}X\roman{|%
- column\vb|}\endcsname}|\upshape\\
-Note, however, that no error bounds-checking is performed when command
-syntax such as
-``\itshape\vb|\|identifier\vb|X|roman-plane\vb|X|roman-row\vb|X|%
-roman-column\upshape'' is employed.
+actual array-element content is suitable for an \verb|\edef|), the user
+should employ the \verb|\arrayij| and \verb|\arrayijk| commands, as
+alternatives.
+\margcmd{arrayij}\margcmd{arrayijk}%
+These commands do not perform any bounds checking (thus eliminating the
+need for an optional argument). Their advantage, however, is that they
+may be freely placed into an
+\verb|\edef|.
\section{Support Routines}