#include "tensorstore/index_space/index_transform.h"
template <DimensionIndex NewOutputRank, ContainerKind OtherCKind>
Result<IndexTransform<InputRank, NewOutputRank>>
tensorstore::IndexTransform<InputRank, OutputRank, CKind>::operator()(
    
const IndexTransform<OutputRank, NewOutputRank, OtherCKind>&
        
other
) const;

Returns ComposeTransforms(other, *this).

This allows an IndexTransform to be used in the same way as DimExpression, as a modifier of an index space.

Given result = transform_a(transform_b).value(), the output index vector result(x) is equal to transform_b(transform_a(x)). This is the opposite composition order of normal mathematical function composition, but is consistent with DimExpression::operator(), which also effectively transforms the input space rather than the output space.