RakuAST::Doc::Declarator class contains the leading and trailing documentation of an object doing the
RakuAST functionality is available in language version
6.e+ and was added in Rakudo compiler release 2023.02. In earlier language versions it is only available when specifying:
use experimental :rakuast;
RakuAST::Doc::Declarator objects are typically created when parsing Raku Programming Language code that has objects with leading (
#|) and trailing (
#=) documentation on it. So most developers will only need to know how to introspect the objects created.
say "attached to a $declarator.WHEREFORE.^name() object";
Returns the object for which this object contains the declarator documentation.
.say for .leading;
Returns the lines of the leading declarator documentation (one for each line with
#| if the object was created from parsing Raku source code.
.say for .trailing;
Returns the lines of the trailing declarator documentation (one for each line with
#= if the object was created from parsing Raku source code.
# method .gist falls back to .rakusay ; # RakuAST::Doc::Declarator.new(...
Returns the string that is needed for the creation of the block using
One seldom creates
RakuAST::Doc::Declarator objects directly. This documentation is intended for those few people who'd like to devise their own way of programmatically building a
method new(Str :, # the associated RakuAST object:, # leading lines of documentation: # trailing lines of documentation)
new method can be called to create a new
RakuAST::Doc::Declarator object. It only takes named arguments.
# there is no syntax for creating just a ::Declarator objectmy = RakuAST::Doc::Declarator.new(:WHEREFORE(RakuAST::VarDeclaration::Simple.new(...)),:leading("line 1 leading","line 2 leading"),:trailing("line 1 trailing","line 2 trailing"));
Note that the leading and trailing documentation may contain any left margin whitespace.
RakuAST object for which this declarator contains the documentation.
Positional with the lines of leading documentation strings.
Positional with the lines of trailing documentation strings.
Set the object for which the
RakuAST::Doc::Declarator object contains the documentation.
.set-leading; # reset.set-leading("foo", "bar");
Set the leading documentation. If no arguments are specified, reset to not having any leading documentation.
Add a line to the leading documentation.
.set-trailing; # reset.set-trailing("foo", "bar");
Set the trailing documentation. If no arguments are specified, reset to not having any trailing documentation.
Add a line to the trailing documentation.