does Systemic
Built-in class for providing compiler related information. Usually accessed through the compiler
attribute of the $*RAKU
dynamic variable.
say .compiler; # OUTPUT: «rakudo (2020.02.16.g.28.bd.4247.a)»
Note: Before Rakudo version 2020.1 this was only available through the compiler
attribute of the $*PERL
dynamic variable. Since Rakudo version 2020.1 this is available through both the $*RAKU
and the $*PERL
variables.
Methods §
method id §
Returns an unique identifier, a long hexadecimal string
method release §
It's empty, but it might contain the release number for specific releases.
method codename §
It's empty, but it might contain the codename for specific releases.
method backend §
method backend()
Since Rakudo version 2020.02, returns the name of the compiler's backend.
method build-date §
method build-date()
Up to Rakudo version 2019.03.1, it returned the date when it was built.
say .compiler.build-date; # OUTPUT: «2018-05-05T21:49:43Z»
method verbose-config §
method verbose-config(:)
If $say
is True
, it prints the different items included in the configuration of the compiler; if it is not, returns a Hash
with the same information.
say .compiler.verbose-config; # OUTPUT: «distro::auth=https://www.opensuse.org/distro::desc=2018-05-06T09:19:17.571307+02:00» ... And the rest of the configuration
See Also: Systemic
Type Graph §
Routines supplied by role Systemic §
Compiler does role Systemic, which provides the following routines:
(Systemic) method auth §
Instance method returning the "auth" (as in "author" or "authority") of the object. Returns "unknown" if the "auth" could not be established.
(Systemic) method config §
Instance returning a hash with object configuration information. Subject to change without notice, but can be helpful in environments where only one type of virtual machine is in use, or to find about the configuration of any other object that mixes in this role.
(Systemic) method desc §
Instance method returning the "desc" (as in "description") of the VM object. Returns a Str
type object if the "desc" could not be established.
(Systemic) method name §
Instance method returning the name of the object.
(Systemic) method signature §
Instance method returning the signature of the object. Returns a Blob
type object if the signature could not be established.
(Systemic) method version §
Instance method returning the version of the object as a Version object. Returns a Version
object "unknown" if the version could not be established.
(Systemic) method gist §
method gist( Systemic: )
Instance method returning the name and version of the object.
say .gist; # OUTPUT: «Raku (6.d)»
$*RAKU
is an object of the Raku type, which mixes in this role and thus implements this method.
(Systemic) method Str §
method Str
Instance method returning the name of the object.
say .Str; # OUTPUT: «Raku»