From fa080de7afc95aa1c19a6e6fc0e0708ced2eadc4 Mon Sep 17 00:00:00 2001 From: Joseph Hunkeler Date: Wed, 8 Jul 2015 20:46:52 -0400 Subject: Initial commit --- sys/fmtio/clscan.x | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 sys/fmtio/clscan.x (limited to 'sys/fmtio/clscan.x') diff --git a/sys/fmtio/clscan.x b/sys/fmtio/clscan.x new file mode 100644 index 00000000..563954d3 --- /dev/null +++ b/sys/fmtio/clscan.x @@ -0,0 +1,32 @@ +# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc. + +# CLSCAN -- Begin a scan of the value of a CL parameter + +int procedure clscan (param) + +char param[ARB] +int getline(), strncmp(), clc_fetch() +include "scan.com" +errchk clreqpar, getline + +begin + # Fetch the value of a CL parameter. First look in the parameter + # cache, querying the CL for the value of the parameter only if it + # is not found in the cache. + + if (clc_fetch (param, sc_scanbuf, SZ_SCANBUF) == ERR) { + call clreqpar (param) + if (getline (CLIN, sc_scanbuf) == EOF) + return (EOF) + } + + # Check for EOF on a list structured parameter; if not EOF initialize + # formatted input for the clget procedures. + + if (strncmp ("EOF\n", sc_scanbuf, 4) == 0) + return (EOF) + else { + call reset_scan() + return (OK) + } +end -- cgit