In IO::Handle§
See primary documentation in context for method put
multi method put(** --> True)multi method put(Junction --> True)
Writes the given @text
to the handle, coercing any non-Str
objects to Str
by calling .Str
method on them, and appending the value of .nl-out
at the end. Junction
arguments autothread and the order of printed strings is not guaranteed.
Attempting to call this method when the handle is in binary mode will result in X::IO::BinaryMode
exception being thrown.
my = 'path/to/file'.IO.open: :w;.put: 'some text';.close;
In role IO::Socket§
See primary documentation in context for method put
method put(IO::Socket: Str(Cool) )
Writes the supplied string, with a \n
appended to it, to the socket, thus sending it to other end of the connection.
Fails if the socket is not connected.
In Independent routines§
See primary documentation in context for sub put
multi put()multi put(** --> True)multi put(Junction --> True)multi put(Str \x)multi put(\x)
Same as print
, except it uses print-nl
(which prints a newline, by default) at the end. Junction
arguments autothread and the order of printed strings is not guaranteed.
put "Hi there!\n"; # OUTPUT: «Hi there!»put "Hi there!"; # OUTPUT: «Hi there!»put [1, 2, 3]; # OUTPUT: «1 2 3»put "Hello" | "Goodbye"; # OUTPUT: «HelloGoodbye»
By itself, put()
will print a new line
put "Hey"; put(); put("Hey"); # OUTPUT: «HeyHey»
but please note that we have used parentheses after put
. Without these parentheses, it will throw an exception (with version 6.d and after). It will also raise an exception if it's used that way before for
; use the method form .put
instead.
.put for <1 2 3>; # OUTPUT: «123»
In Mu§
See primary documentation in context for method put
multi method put(--> Bool)
Prints value to $*OUT
, adding a newline at end, and if necessary, stringifying non-Str
object using the .Str
method.
"abc".put; # OUTPUT: «abc»
In Proc::Async§
See primary documentation in context for method put
method put(Proc::Async: \x, |c)
Does a .join
on the output, adds a newline, and calls .print
on it. Will throw if it's not started, or not open for writing.