In role Metamodel::Trusting§
See primary documentation in context for method trusts
method trusts($type --> List)
Returns a list of types that the invocant trusts.
class A { trusts Int; }; say .^name for A.^trusts; # Int
In Type system§
See primary documentation in context for trait trusts
To allow one class to access the private methods of another class use the trait trusts
. A forward declaration of the trusted class may be required.
class B {...}; class A { trusts B; has $!foo; method !foo { return-rw $!foo } method raku { "A.new(foo => $!foo)" } }; class B { has A $.a .= new; method change { $!a!A::foo = 42; self } }; say B.new.change; # OUTPUT: «B.new(a => A.new(foo => 42))»