txt: ## raku.md
  raku
  
  Combined from primary sources listed below.
  
  # [In IterationBuffer](#___top "go to top of document")[§](#(IterationBuffer)_method_raku "direct link")
  
  See primary documentation
  [in context](/type/IterationBuffer#method_raku)
  for **method raku**.
  
  ```raku
  method raku(IterationBuffer:D: --> Str)
  ```
  
  Produces a representation of the `IterationBuffer` as a [`List`](/type/List) postfixed with ".IterationBuffer" to make it different from an ordinary list. Does **not** roundtrip. Intended for debugging uses only, specifically for use with [dd](/programs/01-debugging#Dumper_function_(dd)).
  
  # [In FatRat](#___top "go to top of document")[§](#(FatRat)_method_raku "direct link")
  
  See primary documentation
  [in context](/type/FatRat#method_raku)
  for **method raku**.
  
  ```raku
  multi method raku(FatRat:D: --> Str:D)
  ```
  
  Returns an implementation-specific string that produces an [equivalent](/routine/eqv) object when given to [EVAL](/routine/EVAL).
  
  ```raku
  say FatRat.new(1, 2).raku; # OUTPUT: «FatRat.new(1, 2)␤»
  
  ```
  
  # [In RakuAST::Doc::Paragraph](#___top "go to top of document")[§](#(RakuAST::Doc::Paragraph)_method_raku "direct link")
  
  See primary documentation
  [in context](/type/RakuAST/Doc/Paragraph#method_raku)
  for **method raku**.
  
  ```raku
  # method .gist falls back to .raku
  say $block;  # RakuAST::Doc::Paragraph.new(...
  
  ```
  
  Returns the string that is needed for the creation of the paragraph using [`RakuAST`](/type/RakuAST) calls.
  
  # [In Complex](#___top "go to top of document")[§](#(Complex)_method_raku "direct link")
  
  See primary documentation
  [in context](/type/Complex#method_raku)
  for **method raku**.
  
  ```raku
  method raku(Complex:D: --> Str:D)
  ```
  
  Returns an implementation-specific string that produces an [equivalent](/routine/eqv) object when given to [EVAL](/routine/EVAL).
  
  ```raku
  say (1-3i).raku;                # OUTPUT: «<1-3i>␤»
  ```
  
  # [In RakuAST::Doc::Markup](#___top "go to top of document")[§](#(RakuAST::Doc::Markup)_method_raku "direct link")
  
  See primary documentation
  [in context](/type/RakuAST/Doc/Markup#method_raku)
  for **method raku**.
  
  ```raku
  # method .gist falls back to .raku
  say $markup;  # RakuAST::Doc::Markup.new(...
  
  ```
  
  Returns the string that is needed for the creation of the markup using [`RakuAST`](/type/RakuAST) calls.
  
  # [In Range](#___top "go to top of document")[§](#(Range)_method_raku "direct link")
  
  See primary documentation
  [in context](/type/Range#method_raku)
  for **method raku**.
  
  ```raku
  multi method raku(Range:D:)
  ```
  
  Returns an implementation-specific string that produces an [equivalent](/routine/eqv) object when given to [EVAL](/routine/EVAL).
  
  ```raku
  say (1..2).raku # OUTPUT: «1..2␤»
  
  ```
  
  # [In IO::Path::Cygwin](#___top "go to top of document")[§](#(IO::Path::Cygwin)_method_raku "direct link")
  
  See primary documentation
  [in context](/type/IO/Path/Cygwin#method_raku)
  for **method raku**.
  
  ```raku
  method raku(IO::Path::Cygwin:D: --> Str:D)
  ```
  
  Returns a string that, when given passed through [`EVAL`](/routine/EVAL) gives the original invocant back.
  
  ```raku
  IO::Path::Cygwin.new("foo/bar").raku.say;
  # OUTPUT: IO::Path::Cygwin.new("foo/bar", :CWD("/home/camelia"))
  
  ```
  
  Note that this string includes the value of the `.CWD` attribute that is set to [`$*CWD`](/language/variables#Dynamic_variables) when the path object was created, by default.
  
  # [In Rat](#___top "go to top of document")[§](#(Rat)_method_raku "direct link")
  
  See primary documentation
  [in context](/type/Rat#method_raku)
  for **method raku**.
  
  ```raku
  multi method raku(Rat:D: --> Str:D)
  ```
  
  Returns an implementation-specific string that produces an [equivalent](/routine/eqv) object when given to [EVAL](/routine/EVAL).
  
  ```raku
  say (1/3).raku;                # OUTPUT: «<1/3>␤»
  say (2/4).raku;                # OUTPUT: «0.5␤»
  
  ```
  
  # [In RakuAST::Doc::Block](#___top "go to top of document")[§](#(RakuAST::Doc::Block)_method_raku "direct link")
  
  See primary documentation
  [in context](/type/RakuAST/Doc/Block#method_raku)
  for **method raku**.
  
  ```raku
  # method .gist falls back to .raku
  say $block;  # RakuAST::Doc::Block.new(...
  
  ```
  
  Returns the string that is needed for the creation of the block using [`RakuAST`](/type/RakuAST) calls.
  
  # [In Mu](#___top "go to top of document")[§](#(Mu)_method_raku "direct link")
  
  See primary documentation
  [in context](/type/Mu#method_raku)
  for **method raku**.
  
  ```raku
  multi method raku(Mu:U:)
  multi method raku(Mu:D:)
  ```
  
  For type objects, returns its name if `.raku` has not been redefined from `Mu`, or calls `.raku` on the name of the type object otherwise.
  
  ```raku
  say Str.raku;          # OUTPUT: «Str␤»
  ```
  
  For plain objects, it will conventionally return a representation of the object that can be used via [`EVAL`](/routine/EVAL) to reconstruct the value of the object.
  
  ```raku
  say (1..3).Set.raku;  # OUTPUT: «Set.new(1,2,3)␤»
  ```
  
  # [In IO::Path](#___top "go to top of document")[§](#(IO::Path)_method_raku "direct link")
  
  See primary documentation
  [in context](/type/IO/Path#method_raku)
  for **method raku**.
  
  ```raku
  method raku(IO::Path:D: --> Str:D)
  ```
  
  Returns a string that, when given passed through [`EVAL`](/routine/EVAL) gives the original invocant back.
  
  ```raku
  "foo/bar".IO.raku.say;
  # OUTPUT: IO::Path.new("foo/bar", :SPEC(IO::Spec::Unix), :CWD("/home/camelia"))
  
  ```
  
  Note that this string includes the value of the `.CWD` attribute that is set to [`$*CWD`](/language/variables#Dynamic_variables) when the path object was created, by default.
  
  # [In IO::Path::Unix](#___top "go to top of document")[§](#(IO::Path::Unix)_method_raku "direct link")
  
  See primary documentation
  [in context](/type/IO/Path/Unix#method_raku)
  for **method raku**.
  
  ```raku
  method raku(IO::Path::Unix:D: --> Str:D)
  ```
  
  Returns a string that, when given passed through [`EVAL`](/routine/EVAL) gives the original invocant back.
  
  ```raku
  IO::Path::Unix.new("foo/bar").raku.say;
  # OUTPUT: IO::Path::Unix.new("foo/bar", :CWD("/home/camelia"))
  
  ```
  
  Note that this string includes the value of the `.CWD` attribute that is set to [`$*CWD`](/language/variables#Dynamic_variables) when the path object was created, by default.
  
  # [In Junction](#___top "go to top of document")[§](#(Junction)_method_raku "direct link")
  
  See primary documentation
  [in context](/type/Junction#method_raku)
  for **method raku**.
  
  ```raku
  multi method raku(Junction:D:)
  ```
  
  Collapses the `Junction` and returns a [`Str`](/type/Str) composed of [raku](/routine/raku) of its components that [evaluates](/routine/EVAL) to the equivalent `Junction` with equivalent components:
  
  ```raku
  <a 42 c>.all.raku.put; # OUTPUT: «all("a", IntStr.new(42, "42"), "c")␤»
  ```
  
  # [In IO::Path::Win32](#___top "go to top of document")[§](#(IO::Path::Win32)_method_raku "direct link")
  
  See primary documentation
  [in context](/type/IO/Path/Win32#method_raku)
  for **method raku**.
  
  ```raku
  method raku(IO::Path::Win32:D: --> Str:D)
  ```
  
  Returns a string that, when given passed through [`EVAL`](/routine/EVAL) gives the original invocant back.
  
  ```raku
  IO::Path::Win32.new("foo/bar").raku.say;
  # OUTPUT: IO::Path::Win32.new("foo/bar", :CWD("C:\\Users\\camelia"))
  
  ```
  
  Note that this string includes the value of the `.CWD` attribute that is set to [`$*CWD`](/language/variables#Dynamic_variables) when the path object was created, by default.
  
  # [In IO::Path::QNX](#___top "go to top of document")[§](#(IO::Path::QNX)_method_raku "direct link")
  
  See primary documentation
  [in context](/type/IO/Path/QNX#method_raku)
  for **method raku**.
  
  ```raku
  method raku(IO::Path::QNX:D: --> Str:D)
  ```
  
  Returns a string that, when given passed through [`EVAL`](/routine/EVAL) gives the original invocant back.
  
  ```raku
  IO::Path::QNX.new("foo/bar").raku.say;
  # OUTPUT: IO::Path::QNX.new("foo/bar", :CWD("/home/camelia"))
  
  ```
  
  Note that this string includes the value of the `.CWD` attribute that is set to [`$*CWD`](/language/variables#Dynamic_variables) when the path object was created, by default.
  
  # [In RakuAST::Doc::Declarator](#___top "go to top of document")[§](#(RakuAST::Doc::Declarator)_method_raku "direct link")
  
  See primary documentation
  [in context](/type/RakuAST/Doc/Declarator#method_raku)
  for **method raku**.
  
  ```raku
  # method .gist falls back to .raku
  say $declarator;  # RakuAST::Doc::Declarator.new(...
  
  ```
  
  Returns the string that is needed for the creation of the block using [`RakuAST`](/type/RakuAST) calls.
  
  # [In Allomorph](#___top "go to top of document")[§](#(Allomorph)_method_raku "direct link")
  
  See primary documentation
  [in context](/type/Allomorph#method_raku)
  for **method raku**.
  
  ```raku
  multi method raku(Allomorph:D:)
  ```
  
  Return a representation of the object that can be used via [`EVAL`](/routine/EVAL) to reconstruct the value of the object.
  