In Operators§
See primary documentation in context for infix &&.
Returns the first argument that evaluates to False
in Boolean context, otherwise returns the last argument.
Note that this short-circuits, i.e. if one of the arguments evaluates to a false value, the arguments to the right are never evaluated.
sub a { 1 } sub b { 0 } sub c { die "never called" }; say a() && b() && c(); # OUTPUT: «0»