Metamodel::PrivateMethodContainer Reference
Metaobject that supports private methods
What it is #
Position in the hierarchy #
| Inherits from | — |
| Does | — |
| Consumed by | Metamodel::ClassHOW, Metamodel::ConcreteRoleHOW, Metamodel::ParametricRoleHOW |
Routines #
Signatures are reproduced from the documentation, including their declared return types. A routine listed here is part of the type's published interface; whether Raku++ implements it is a separate question, answered by the examples below.
method add_private_method #
method add_private_method($obj, $name, $code)
Adds a private method $code with name $name.
method private_method_table #
method private_method_table($obj)
Returns a hash of name => &method_object
method private_methods #
method private_methods($obj)
Returns a list of private method names.
method private_method_names #
method private_method_names($obj)
Alias to private_methods.
method find_private_method #
method find_private_method($obj, $name)
Locates a private method. Otherwise, returns Mu if it doesn't exist.
Examples, run three ways #
Every example below comes from the official documentation, together with the output that documentation asserts. Each was then executed by Rakudo and by Raku++ when this page was built. Where the three agree, one result is shown; where they do not, all three are — because which of them is wrong is exactly the information worth having.
2 no-output
role Metamodel::PrivateMethodContainer { ... }Not executed: the documentation states no expected output for this example.
class A {
# the ! declares a private method
method !double($x) {
say 2 * $x;
}
method call-double($y) {
# call with ! instead of .
self!double($y);
}
}Not executed: the documentation states no expected output for this example.