=begin pod

=TITLE role Callable

=SUBTITLE Invocable code object

    role Callable { ... }

Role for objects which support calling them. It's used in L<Block>,
L<Routine>, L<Sub>, L<Method>, L<Submethod> and L<Macro> types.

=head1 Methods

=head2 method assuming

    method assuming (Callable:D $self: |primers)

Returns a C<Callable> that implements the same behaviour as the
original, but has the values passed to .assuming already bound to the
corresponding parameters.

    sub add(Int $x,Int $y) { $x + $y };
    my &add_to_5 = &add.assuming(5);
    say add_to_5(4); #-> 9

=comment according to design docs it's Callable but in rakudo it's assuming is in Block

=end pod
