View source code
Display the source code in std/stdio.d from which this
page was generated on github.
Report a bug
If you spot a problem with this page, click here to create a
Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page.
Requires a signed-in GitHub account. This works well for small changes.
If you'd like to make larger changes you may want to consider using
local clone.
Alias std.stdio.stdin
The standard input stream.
alias stdin
= makeGlobal!(StdFileHandle.stdin);
Returns
stdin as a File
.
Note
The returned File
wraps stdin
, and
is therefore thread global. Reassigning stdin
to a different
File
must be done in a single-threaded or locked context in
order to avoid race conditions.
All reading from stdin
automatically locks the file globally,
and will cause all other threads calling read
to wait until
the lock is released.
Example
// Read stdin, sort lines, write to stdout
import std .algorithm .mutation : copy;
import std .algorithm .sorting : sort;
import std .array : array;
import std .typecons : Yes;
void main()
{
stdin // read from stdin
.byLineCopy(Yes .keepTerminator) // copying each line
.array() // convert to array of lines
.sort() // sort the lines
.copy( // copy output of .sort to an OutputRange
stdout .lockingTextWriter()); // the OutputRange
}
Authors
Walter Bright, Andrei Alexandrescu, Alex Rønne Petersen
License
Copyright © 1999-2022 by the D Language Foundation | Page generated by ddox.