private function debugCallable($fn)
    {
        if (is_string($fn)) {
            return "callable({$fn})";
        }

        if (is_array($fn)) {
            return is_string($fn[0])
                ? "callable({$fn[0]}::{$fn[1]})"
                : "callable(['" . get_class($fn[0]) . "', '{$fn[1]}'])";
        }

        return 'callable(' . spl_object_hash($fn) . ')';
    }
private function debugCallable($fn)
    {
        if (is_string($fn)) {
            return "callable({$fn})";
        }

        if (is_array($fn)) {
            return is_string($fn[0])
                ? "callable({$fn[0]}::{$fn[1]})"
                : "callable(['" . get_class($fn[0]) . "', '{$fn[1]}'])";
        }

        return 'callable(' . spl_object_hash($fn) . ')';
    }
private function debugCallable ( $ fn ) { if ( is_string ( $ fn ) ) { return "callable({$fn})" ; } if ( is_array ( $ fn ) ) { return is_string ( $ fn [ 0 ] ) ? "callable({$fn[0]}::{$fn[1]})" : "callable(['" . get_class ( $ fn [ 0 ] ) . "', '{$fn[1]}'])" ; } return 'callable(' . spl_object_hash ( $ fn ) . ')' ; }
Provides a debug string for a given callable.

@param array|callable $fn Function to write as a string.

@return string
Provides a debug string for a given callable .