Lines Matching defs:extent
55 Scalar<ExtentType> extent{arrayConstant.values().at(j)};
56 result.emplace_back(MaybeExtentExpr{ExtentExpr{std::move(extent)}});
126 for (const auto &extent : shape.values()) {
127 result.push_back(extent.ToInt64());
143 for (const auto &extent : shape) {
144 result.emplace_back(ExtentExpr{extent});
204 ExtentExpr extent{1};
207 extent = std::move(extent) * std::move(*dim);
212 return extent;
273 // Lower bound is 1, regardless of extent
282 auto extent{ToInt64(Fold(*context_,
285 if (extent) {
286 if (extent <= 0) {
455 // the extent. In particular, if the upper bound is less than the lower bound,
493 if (auto &extent{shape->at(dimension)};
494 // Don't return a non-constant extent, as the variables that
497 extent && IsActuallyConstant(*extent)) {
498 return std::move(extent);
537 if (auto extent{GetNonNegativeExtent(shapeSpec, invariantOnly)}) {
538 return extent;
596 ExtentExpr &&lower, MaybeExtentExpr &&extent) {
597 if (extent) {
599 return std::move(*extent);
601 return std::move(*extent) + std::move(lower) - ExtentExpr{1};
609 FoldingContext &context, ExtentExpr &&lower, MaybeExtentExpr &&extent) {
610 return Fold(context, ComputeUpperBound(std::move(lower), std::move(extent)));
637 } else if (auto extent{GetAssociatedExtent(symbol, dimension)}) {
639 GetRawLowerBound(base, dimension), std::move(extent));
655 if (auto extent{GetNonNegativeExtent(shapeSpec, invariantOnly)}) {
657 context ? Fold(*context, std::move(*extent)) : *extent)}) {
695 ExtentExpr extent{DescriptorInquiry{
697 return ComputeUpperBound(std::move(lb), std::move(extent));
699 } else if (auto extent{GetAssociatedExtent(symbol, dimension)}) {
701 return ComputeUpperBound(std::move(*lb), std::move(extent));
825 auto &extent{(*exprShape)[dimension]};
826 if (extent && !IsActuallyConstant(*extent)) {
827 extent = GetExtent(base, dimension);
842 for (auto &extent : *resultShape) {
843 if (extent && !IsActuallyConstant(*extent)) {
844 extent.reset();
1146 ExtentExpr extent{Fold(*context_,
1150 return Shape{MaybeExtentExpr{std::move(extent)}};
1218 messages.Say("Dimension %1$d of %2$s has extent %3$jd, "
1219 "but %4$s has extent %5$jd"_err_en_US,