routine print
Documentation for routine print
assembled from the following types:
class Mu
From Mu
(Mu) method print
multi method print(--> Bool)
Prints value to $*OUT
after stringification using .Str
method without adding a newline at end.
"abc\n".print; # RESULT: «abc»
language documentation Independent routines
From Independent routines
(Independent routines) sub print
Defined as:
multi sub print(** --> True)multi sub print(Junction --> True)
Prints the given text on standard output (the $*OUT
filehandle), coercing non-Str objects to Str by calling .Str
method. Junction arguments autothread and the order of printed strings is not guaranteed.
print "Hi there!\n"; # OUTPUT: «Hi there!»print "Hi there!"; # OUTPUT: «Hi there!»print [1, 2, 3]; # OUTPUT: «1 2 3»
To print text and include the trailing newline, use put
.
class Proc::Async
From Proc::Async
(Proc::Async) method print
method print(Proc::Async: Str(Any) , : = )
Write the text data in $str
to the standard input stream of the external program, encoding it as UTF-8.
Returns a Promise that will be kept once the data has fully landed in the input buffer of the external program.
The Proc::Async
object must be created for writing (with Proc::Async.new(:w, $path, @args)
). Otherwise an X::Proc::Async::OpenForWriting exception will the thrown.
start
must have been called before calling method print, otherwise an X::Proc::Async::MustBeStarted exception is thrown.
class IO::CatHandle
From IO::CatHandle
(IO::CatHandle) method print
Defined as:
multi method print(|)
The IO::CatHandle type overrides this method to throw a X::NYI
exception. If you have a good idea for how this method should behave, tell Rakudo developers about it!
role IO::Socket
From IO::Socket
(IO::Socket) method print
method print(IO::Socket: Str(Cool) )
Writes the supplied string to the socket, thus sending it to other end of the connection. The binary version is method write.
Fails if the socket is not connected.
class IO::Handle
From IO::Handle
(IO::Handle) method print
Defined as:
multi method print(** --> True)multi method print(Junction --> True)
Writes the given @text
to the handle, coercing any non-Str objects to Str by calling .Str
method on them. Junction arguments autothread and the order of printed strings is not guaranteed. See write to write bytes.
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;.print: 'some text';.close;
class IO::Socket::Async
From IO::Socket::Async
(IO::Socket::Async) method print
method print(Str --> Promise)
Attempt to send $str
on the IO::Socket::Async that will have been obtained indirectly via connect
or listen
, returning a Promise that will be kept with the number of bytes sent or broken if there was an error sending.