#include "tensorstore/array.h"
template <typename SourceElement,
         
 DimensionIndex SourceRank,
         
 ArrayOriginKind SourceOriginKind,
         
 typename DestElement,
         
 DimensionIndex DestRank,
         
 ArrayOriginKind DestOriginKind>
constexpr bool tensorstore::IsArrayExplicitlyConvertible =
   
 IsElementTypeExplicitlyConvertible<SourceElement, DestElement> &&
   
 RankConstraint::EqualOrUnspecified(SourceRank, DestRank) &&
   
 IsArrayOriginKindConvertible(SourceOriginKind, DestOriginKind);

Bool-valued metafunction that determines whether a (SourceElement, SourceRank, SourceOriginKind) tuple is potentially convertible to a (DestElement, DestRank, DestOriginKind) tuple, based on IsElementTypeExplicitlyConvertible, RankConstraint::EqualOrUnspecified and IsArrayOriginKindConvertible.