#include "tensorstore/index_space/dim_expression.h"
template <DimensionIndex Rank, ContainerKind CKind>
auto tensorstore::DimExpression<Op...>::operator()(
    
IndexDomain<Rank, CKind> domain,
    
DimensionIndexBufferselection_output =
       
 &internal::GetLValue(DimensionIndexBuffer())
) const;

Applies this DimExpression to the specified index domain.

Requires:

This DimExpression contains at least one operation.

Parameters:
IndexDomain<Rank, CKind> domain

The index domain to which this DimExpression is applied.

out
DimensionIndexBuffer *selection_output = &internal::GetLValue(DimensionIndexBuffer())

Optional. If specified, filled with the indices of the new dimension selection after applying this DimExpression.

Returns:

The new index domain, or any error caused by the initial dimension selection or one of the chained operations.