summaryrefslogtreecommitdiff
path: root/manual
diff options
context:
space:
mode:
authorRoberto Ierusalimschy <roberto@inf.puc-rio.br>2019-08-12 11:26:08 -0300
committerRoberto Ierusalimschy <roberto@inf.puc-rio.br>2019-08-12 11:26:08 -0300
commit09b4e527a008687a2fd90202b5e7b2f175d8ebed (patch)
treebed6d9e6512aaba8b95109b752d3c9d5e4756eac /manual
parent35a28a58b38fb90cbe7c9596d60af2b3c1bd52a3 (diff)
downloadlua-github-09b4e527a008687a2fd90202b5e7b2f175d8ebed.tar.gz
Detail in the manual (method 'file:setvbuf')
ANSI C is vague about 'setvbuf'; most details are implementation defined. So, the manual cannot give any guaranties, either.
Diffstat (limited to 'manual')
-rw-r--r--manual/manual.of24
1 files changed, 8 insertions, 16 deletions
diff --git a/manual/manual.of b/manual/manual.of
index c1ee8eb7..ff27a7d4 100644
--- a/manual/manual.of
+++ b/manual/manual.of
@@ -8142,24 +8142,12 @@ end of the file, and returns its size.
@LibEntry{file:setvbuf (mode [, size])|
-Sets the buffering mode for an output file.
+Sets the buffering mode for a file.
There are three available modes:
@description{
-
-@item{@St{no}|
-no buffering; the result of any output operation appears immediately.
-}
-
-@item{@St{full}|
-full buffering; output operation is performed only
-when the buffer is full or when
-you explicitly @T{flush} the file @seeF{io.flush}.
-}
-
-@item{@St{line}|
-line buffering; output is buffered until a newline is output
-or there is any input from some special files
-(such as a terminal device).
+@item{@St{no}| no buffering.}
+@item{@St{full}| full buffering.}
+@item{@St{line}| line buffering.}
}
}
@@ -8167,6 +8155,10 @@ For the last two cases,
@id{size} is a hint for the size of the buffer, in bytes.
The default is an appropriate size.
+The specific behavior of each mode is non portable;
+check the underlying @ANSI{setvbuf} in your platform for
+more details.
+
}
@LibEntry{file:write (@Cdots)|