Combined from primary sources listed below.
See primary docmentation in context for method Str.
multi method Str(Code:D: --> Str:D)
Will output the method name, but also produce a warning. Use .raku or .gist instead.
sub marine() { }
say ~&marine;
# OUTPUT: «Sub object coerced to string (please use .gist or .raku to do that)marine»
say &marine.Str;
# OUTPUT: «Sub object coerced to string (please use .gist or .raku to do that)marine»
say &marine.raku; # OUTPUT: «sub marine { #`(Sub|94280758332168) ... }»
See primary docmentation in context for method Str.
method Str(IO::Path:D: --> Str)
Alias for IO::Path.path. In particular, note that default stringification of an IO::Path does NOT use the value of $.CWD attribute. To stringify while retaining full path information use .absolute or .relative methods.
See primary docmentation in context for method Str.
See primary docmentation in context for method Str.
put $block; # bar
Returns the string for the paragraphs of the block, with any markup also stringified.
See primary docmentation in context for method Str.
See primary docmentation in context for method Str.
method Str(Match:D: --> Str:D)
Returns the matched text.
"abc123def" ~~ /\d+/;
say $/.Str; # OUTPUT: «123»
See primary docmentation in context for method Str.
method Str(IO::CatHandle:D: --> Str:D)
Calls .Str on the currently active source handle and returns the result. If the source handle queue has been exhausted, returns an implementation-defined string ('<closed IO::CatHandle>' in Rakudo).
See primary docmentation in context for method Str.
put $markup; # B<and>
Returns the string for the markup object, with any embedded markup also stringified.
See primary docmentation in context for method Str.
method Str
Instance method returning the name of the object.
say $*RAKU.Str; # OUTPUT: «Raku»
See primary docmentation in context for method Str.
Converts to a string including the name, file and line it's been defined in.
See primary docmentation in context for method Str.
method Str(Int:D)
Returns a string representation of the number.
say π.Str; # OUTPUT: «3.141592653589793»
Cool being a parent class of Num, an explicit call to the Num.Str method is seldom needed.
say π.Str.comb == π.comb; # OUTPUT: «True»
See primary docmentation in context for method Str.
multi method Str(Date:D: --> Str:D)
Returns a string representation of the invocant, as specified by the formatter. If no formatter was specified, an (ISO 8601) date will be returned.
say Date.new('2015-12-24').Str; # OUTPUT: «2015-12-24»
my $fmt = { sprintf "%02d/%02d/%04d", .month, .day, .year };
say Date.new('2015-12-24', formatter => $fmt).Str; # OUTPUT: «12/24/2015»
See primary docmentation in context for method Str.
multi method Str(StrDistance:D: --> Str)
Returns an after string value.
my $str-dist = ($str ~~ tr/old/new/);
say $str-dist.Str; # OUTPUT: «fnew»
say ~$str-dist; # OUTPUT: «fnew»
See primary docmentation in context for method Str.
multi method Str(--> Str)
Returns a string representation of the invocant, intended to be machine readable. Method Str warns on type objects, and produces the empty string.
say Mu.Str; # Use of uninitialized value of type Mu in string context.
my @foo = [2,3,1];
say @foo.Str # OUTPUT: «2 3 1»
See primary docmentation in context for method Str.
See primary docmentation in context for method Str.
method Str(IO::Special:D:)
This returns '<STDIN>', '<STDOUT>', or '<STDERR>' as appropriate.
See primary docmentation in context for method Str.
put $paragraph; # Text before B<and> after markup
Returns the string for the paragraph, with any markup stringified.
See primary docmentation in context for method Str.
multi method Str(Pair:D: --> Str:D)
Returns a string representation of the invocant formatted as key ~ \t ~ value.
my $b = eggs => 3;
say $b.Str; # OUTPUT: «eggs 3»
See primary docmentation in context for method Str.
multi method Str(Int:D)
multi method Str(Int:D, :$superscript)
multi method Str(Int:D, :$subscript)
Returns a string representation of the number.
say 42.Str; # OUTPUT: «42»
Cool being a parent class of Int, an explicit call to the Int.Str method is seldom needed, unless you want the string to be returned in superscript or subscript.
say 42.Str(:superscript); # OUTPUT: «⁴²»
say 42.Str(:subscript); # OUTPUT: «₄₂»
The :superscript and :subscript named arguments are available as of the 2023.05 Rakudo compiler release.
See primary docmentation in context for method Str.
method Str(Version:D: --> Str:D)
Returns a string representation of the invocant.
my $v1 = v1.0.1;
my $v2 = Version.new('1.0.1');
say $v1.Str; # OUTPUT: «1.0.1»
say $v2.Str; # OUTPUT: «1.0.1»
See primary docmentation in context for method Str.
multi method Str(Backtrace:D:)
Returns a concise string representation of the backtrace, omitting routines marked as is hidden-from-backtrace, and at the discretion of the implementation, also some routines from the setting.
my $backtrace = Backtrace.new;
say $backtrace.Str;
See primary docmentation in context for method Str.
See primary docmentation in context for method Str.
multi method Str(Junction:D:)
Autothreads the .Str method over its elements and returns results as a Junction. Output methods that use .Str method (print and put) are special-cased to autothread junctions, despite being able to accept a Mu type.
See primary docmentation in context for method Str.
multi method Str(Blob:D:)
Throws X::Buf::AsStr with Str as payload. In order to convert to a Str you need to use .decode.
See primary docmentation in context for method Str.
method Str(List:D: --> Str:D)
Stringifies the elements of the list and joins them with spaces (same as .join(' ')).
say (1,2,3,4,5).Str; # OUTPUT: «1 2 3 4 5»
See primary docmentation in context for method Str.
method Str(DateTime:D: --> Str:D)
Returns a string representation of the invocant, as done by the formatter. If no formatter was specified, an ISO 8601 timestamp will be returned.
say DateTime.new('2015-12-24T12:23:00+0200').Str;
# OUTPUT: «2015-12-24T12:23:00+02:00»
See primary docmentation in context for method Str.
method Str(Thread:D: --> Str:D)
Returns a string which contains the invocants thread id and name.
my $t = Thread.new(code => { for 1..5 -> $v { say $v }}, name => 'calc thread');
say $t.Str; # OUTPUT: «Thread<3>(calc thread)»
See primary docmentation in context for method Str.
multi method Str(Real:D:)
Calls the Bridge method on the invocant and then the Str method on its return value.
See primary docmentation in context for method Str.