From b83e22530341ee1225d9c04e51306d6748c3ab33 Mon Sep 17 00:00:00 2001 From: Andy Dienes Date: Thu, 19 Jan 2023 21:55:22 -0500 Subject: [PATCH 1/2] add docs for broadcast_shape --- base/broadcast.jl | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/base/broadcast.jl b/base/broadcast.jl index f7e7a3725c9ca..801991f09184f 100644 --- a/base/broadcast.jl +++ b/base/broadcast.jl @@ -512,6 +512,19 @@ julia> Broadcast.combine_axes(1, 1, 1) @inline combine_axes(A, B) = broadcast_shape(axes(A), axes(B)) combine_axes(A) = axes(A) +""" + broadcast_shape(As...) -> Tuple + +Determine the result axes for broadcasting across all axes (size Tuples) in `As`. + +```jldoctest +julia> Broadcast.broadcast_shape((1,2), (2,1)) +(2, 2) + +julia> Broadcast.broadcast_shape((1,), (1,5), (4,5,3)) +(4, 5, 3) +``` +""" # shape (i.e., tuple-of-indices) inputs broadcast_shape(shape::Tuple) = shape broadcast_shape(shape::Tuple, shape1::Tuple, shapes::Tuple...) = broadcast_shape(_bcs(shape, shape1), shapes...) From 13fe91c72df32db1bfa9ba5fbae4bbec5e6ffe8f Mon Sep 17 00:00:00 2001 From: Jameson Nash Date: Sat, 21 Jan 2023 23:11:06 -0600 Subject: [PATCH 2/2] Update base/broadcast.jl --- base/broadcast.jl | 1 + 1 file changed, 1 insertion(+) diff --git a/base/broadcast.jl b/base/broadcast.jl index 801991f09184f..8465b50ddc333 100644 --- a/base/broadcast.jl +++ b/base/broadcast.jl @@ -525,6 +525,7 @@ julia> Broadcast.broadcast_shape((1,), (1,5), (4,5,3)) (4, 5, 3) ``` """ +function broadcast_shape end # shape (i.e., tuple-of-indices) inputs broadcast_shape(shape::Tuple) = shape broadcast_shape(shape::Tuple, shape1::Tuple, shapes::Tuple...) = broadcast_shape(_bcs(shape, shape1), shapes...)