This file is indexed.

/usr/share/doc/r5rs-doc/r5rs/Input.html is in r5rs-doc 20010328-7.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
<html lang="en">
<head>
<title>Input - Revised(5) Scheme</title>
<meta http-equiv="Content-Type" content="text/html">
<meta name="description" content="Revised(5) Scheme">
<meta name="generator" content="makeinfo 4.13">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="Input-and-output.html#Input-and-output" title="Input and output">
<link rel="prev" href="Ports.html#Ports" title="Ports">
<link rel="next" href="Output.html#Output" title="Output">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
<meta http-equiv="Content-Style-Type" content="text/css">
<style type="text/css"><!--
  pre.display { font-family:inherit }
  pre.format  { font-family:inherit }
  pre.smalldisplay { font-family:inherit; font-size:smaller }
  pre.smallformat  { font-family:inherit; font-size:smaller }
  pre.smallexample { font-size:smaller }
  pre.smalllisp    { font-size:smaller }
  span.sc    { font-variant:small-caps }
  span.roman { font-family:serif; font-weight:normal; } 
  span.sansserif { font-family:sans-serif; font-weight:normal; } 
--></style>
</head>
<body>
<div class="node">
<a name="Input"></a>
<p>
Next:&nbsp;<a rel="next" accesskey="n" href="Output.html#Output">Output</a>,
Previous:&nbsp;<a rel="previous" accesskey="p" href="Ports.html#Ports">Ports</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="Input-and-output.html#Input-and-output">Input and output</a>
<hr>
</div>

<h4 class="subsection">6.6.2 Input</h4>

<p><a name="index-g_t_0040w_007binput_007d-448"></a>

<p class="noindent">&nbsp;<!-- /@w -->
<!-- ??? -->
<pre class="sp">





</pre>

<div class="defun">
&mdash; library procedure: <b>read</b><var><a name="index-read-449"></a></var><br>
&mdash; library procedure: <b>read</b><var> port<a name="index-read-450"></a></var><br>
<blockquote>
     <p>&lsquo;<samp><span class="samp">Read</span></samp>&rsquo; converts external representations of Scheme objects into the
objects themselves.  That is, it is a parser for the nonterminal
&lt;datum&gt; (see sections see <a href="External-representation.html#External-representation">External representation</a> and
see <a href="Pairs-and-lists.html#Pairs-and-lists">Pairs and lists</a>).  &lsquo;<samp><span class="samp">Read</span></samp>&rsquo; returns the next
object parsable from the given input <var>port</var>, updating <var>port</var> to point to
the first character past the end of the external representation of the object.

     <p>If an end of file is encountered in the input before any
characters are found that can begin an object, then an end of file
object is returned. 
 The port remains open, and further attempts
to read will also return an end of file object.  If an end of file is
encountered after the beginning of an object's external representation,
but the external representation is incomplete and therefore not parsable,
an error is signalled.

     <p>The <var>port</var> argument may be omitted, in which case it defaults to the
value returned by &lsquo;<samp><span class="samp">current-input-port</span></samp>&rsquo;.  It is an error to read from
a closed port. 
</p></blockquote></div>

<div class="defun">
&mdash; procedure: <b>read-char</b><var><a name="index-read_002dchar-451"></a></var><br>
&mdash; procedure: <b>read-char</b><var> port<a name="index-read_002dchar-452"></a></var><br>
<blockquote>
     <p>Returns the next character available from the input <var>port</var>, updating
the <var>port</var> to point to the following character.  If no more characters
are available, an end of file object is returned.  <var>Port</var> may be
omitted, in which case it defaults to the value returned by &lsquo;<samp><span class="samp">current-input-port</span></samp>&rsquo;.

     </blockquote></div>

<div class="defun">
&mdash; procedure: <b>peek-char</b><var><a name="index-peek_002dchar-453"></a></var><br>
&mdash; procedure: <b>peek-char</b><var> port<a name="index-peek_002dchar-454"></a></var><br>
<blockquote>
     <p>Returns the next character available from the input <var>port</var>,
<em>without</em> updating
the <var>port</var> to point to the following character.  If no more characters
are available, an end of file object is returned.  <var>Port</var> may be
omitted, in which case it defaults to the value returned by &lsquo;<samp><span class="samp">current-input-port</span></samp>&rsquo;.

     <blockquote>
<em>Note:</em>
The value returned by a call to &lsquo;<samp><span class="samp">peek-char</span></samp>&rsquo; is the same as the
value that would have been returned by a call to &lsquo;<samp><span class="samp">read-char</span></samp>&rsquo; with the
same <var>port</var>.  The only difference is that the very next call to
&lsquo;<samp><span class="samp">read-char</span></samp>&rsquo; or &lsquo;<samp><span class="samp">peek-char</span></samp>&rsquo; on that <var>port</var> will return the
value returned by the preceding call to &lsquo;<samp><span class="samp">peek-char</span></samp>&rsquo;.  In particular, a call
to &lsquo;<samp><span class="samp">peek-char</span></samp>&rsquo; on an interactive port will hang waiting for input
whenever a call to &lsquo;<samp><span class="samp">read-char</span></samp>&rsquo; would have hung. 
</blockquote>

     </blockquote></div>

<div class="defun">
&mdash; procedure: <b>eof-object?</b><var> obj<a name="index-eof_002dobject_003f-455"></a></var><br>
<blockquote>
     <p>Returns <tt>#t</tt> if <var>obj</var> is an end of file object, otherwise returns
<tt>#f</tt>.  The precise set of end of file objects will vary among
implementations, but in any case no end of file object will ever be an object
that can be read in using &lsquo;<samp><span class="samp">read</span></samp>&rsquo;.

     </blockquote></div>

<div class="defun">
&mdash; procedure: <b>char-ready?</b><var><a name="index-char_002dready_003f-456"></a></var><br>
&mdash; procedure: <b>char-ready?</b><var> port<a name="index-char_002dready_003f-457"></a></var><br>
<blockquote>
     <p>Returns <tt>#t</tt> if a character is ready on the input <var>port</var> and
returns <tt>#f</tt> otherwise.  If &lsquo;<samp><span class="samp">char-ready</span></samp>&rsquo; returns <tt>#t</tt> then
the next &lsquo;<samp><span class="samp">read-char</span></samp>&rsquo; operation on the given <var>port</var> is guaranteed
not to hang.  If the <var>port</var> is at end of file then &lsquo;<samp><span class="samp">char-ready?</span></samp>&rsquo;
returns <tt>#t</tt>.  <var>Port</var> may be omitted, in which case it defaults to
the value returned by &lsquo;<samp><span class="samp">current-input-port</span></samp>&rsquo;.

     <blockquote>
<em>Rationale:</em>
&lsquo;<samp><span class="samp">Char-ready?</span></samp>&rsquo; exists to make it possible for a program to
accept characters from interactive ports without getting stuck waiting for
input.  Any input editors associated with such ports must ensure that
characters whose existence has been asserted by &lsquo;<samp><span class="samp">char-ready?</span></samp>&rsquo; cannot
be rubbed out.  If &lsquo;<samp><span class="samp">char-ready?</span></samp>&rsquo; were to return <tt>#f</tt> at end of
file, a port at end of file would be indistinguishable from an interactive
port that has no ready characters. 
</blockquote>

     </blockquote></div>

</body></html>