
{{alias}}( arrays )
    Broadcasts ndarrays to a common shape.

    The returned arrays are views on their respective underlying array data
    buffers. The views are typically **not** contiguous. As more than one
    element of a returned view may refer to the same memory location, writing
    to a view may affect multiple elements. If you need to write to a returned
    array, copy the array before performing operations which may mutate
    elements.

    Returned arrays are "base" ndarrays, and, thus, returned arrays do not
    perform bounds checking or afford any of the guarantees of the non-base
    ndarray constructor. The primary intent of this function is to broadcast
    ndarray-like objects within internal implementations and to do so with
    minimal overhead.

    The function throws an error if provided broadcast-incompatible ndarrays.

    The function always returns new ndarray instances even if an input ndarray
    and the broadcasted shape are the same.

    Parameters
    ----------
    arrays: ArrayLikeObject<ndarray>
        List of ndarrays.

    Returns
    -------
    out: Array<ndarray>
        Broadcasted arrays.

    Examples
    --------
    > var x = {{alias:@stdlib/ndarray/array}}( [ [ 1, 2 ], [ 3, 4 ] ] )
    <ndarray>
    > var sh = x.shape
    [ 2, 2 ]
    > var y = {{alias:@stdlib/ndarray/zeros}}( [ 3, 2, 2 ] )
    <ndarray>
    > var out = {{alias}}( [ x, y ] )
    [ <ndarray>, <ndarray> ]

    // Retrieve the broadcasted "x" array:
    > var bx = out[ 0 ]
    <ndarray>
    > sh = bx.shape
    [ 3, 2, 2 ]

    // Retrieve broadcasted elements...
    > var v = bx.get( 0, 0, 0 )
    1
    > v = bx.get( 0, 0, 1 )
    2
    > v = bx.get( 0, 1, 0 )
    3
    > v = bx.get( 0, 1, 1 )
    4
    > v = bx.get( 1, 0, 0 )
    1
    > v = bx.get( 1, 1, 0 )
    3
    > v = bx.get( 2, 0, 0 )
    1
    > v = bx.get( 2, 1, 1 )
    4

    See Also
    --------

