Lines Matching full:rank

42     return shape.Rank() == 0 ||
51 CHECK(arrayConstant.Rank() == 1);
72 if (expr && expr->Rank() == 0) {
84 Shape GetShapeHelper::CreateShape(int rank, NamedEntity &base) const {
86 for (int dimension{0}; dimension < rank; ++dimension) {
258 int rank{object->shape().Rank()};
259 if (dimension_ < rank) {
263 lbound && lbound->Rank() == 0) {
267 if (dimension_ == rank - 1 &&
276 ubound && ubound->Rank() == 0) {
320 if (assoc->IsAssumedSize()) { // RANK(*)
322 } else if (assoc->IsAssumedRank()) { // RANK DEFAULT
323 } else if (assoc->rank()) { // RANK(n)
325 if (IsDescriptor(resolved) && dimension_ < *assoc->rank()) {
355 if (component.base().Rank() == 0) {
418 int rank{base.Rank()};
419 for (int dim{0}; dim < rank; ++dim) {
428 int rank{base.Rank()};
429 for (int dim{0}; dim < rank; ++dim) {
437 int rank{base.Rank()};
438 for (int dim{0}; dim < rank; ++dim) {
447 int rank{base.Rank()};
448 for (int dim{0}; dim < rank; ++dim) {
469 } else if (lbound && ubound && lbound->Rank() == 0 && ubound->Rank() == 0 &&
490 assoc && !assoc->rank()) { // not SELECT RANK case
512 if (assoc->IsAssumedSize() || assoc->IsAssumedRank()) { // RANK(*)/DEFAULT
514 } else if (assoc->rank()) { // RANK(n)
515 if (semantics::IsDescriptor(symbol) && dimension < *assoc->rank()) {
540 j == symbol.Rank()) {
617 int rank{details->shape().Rank()};
618 if (dimension < rank) {
620 if (bound && bound->Rank() == 0 &&
624 dimension + 1 == symbol.Rank()) {
635 } else if (assoc->rank() && dimension >= *assoc->rank()) {
653 if (ubound && ubound->Rank() == 0 &&
673 int rank{details->shape().Rank()};
674 if (dimension < rank) {
679 dimension + 1 == symbol.Rank()) {
690 } else if (assoc->rank()) { // RANK (n)
692 if (IsDescriptor(resolved) && dimension < *assoc->rank()) {
721 int rank{base.Rank()};
722 for (int dim{0}; dim < rank; ++dim) {
741 int corank{object->coshape().Rank()};
745 if (lcobound->Rank() == 0 &&
759 int corank{object->coshape().Rank()};
763 if (ucobound->Rank() == 0 &&
800 int n{object.shape().Rank()};
817 if (assoc.rank()) { // SELECT RANK case
818 int n{assoc.rank().value()};
823 int rank{static_cast<int>(exprShape->size())};
824 for (int dimension{0}; dimension < rank; ++dimension) {
864 int rank{symbol.Rank()};
865 if (rank == 0) {
869 return CreateShape(rank, base);
880 if (ss.Rank() > 0) {
901 if (ss.Rank() > 0) {
915 if (call.Rank() == 0) {
927 if (arg && arg->Rank() > 0 && j < chars->dummyArguments.size()) {
929 anyArrayArgRank = arg->Rank();
930 } else if (arg->Rank() != anyArrayArgRank) {
967 MaybeExtentExpr{ExtentExpr{call.arguments().front()->Rank()}}};
997 auto rank{static_cast<int>(arrayShape->size())};
1001 if (dim && *dim >= 1 && *dim <= rank) {
1006 // xxxLOC(no DIM=) result is vector(1:RANK(ARRAY=))
1007 return Shape{ExtentExpr{rank}};
1119 if (moldTypeAndShape->Rank() == 0) {
1183 // The rank is always known even if the extents are not.
1184 return Shape(static_cast<std::size_t>(call.Rank()), MaybeExtentExpr{});
1210 messages.Say("Rank of %1$s is %2$d, but %3$s has rank %4$d"_err_en_US,
1235 std::size_t rank(indices.size());
1236 CHECK(rank <= extents.size());
1237 for (std::size_t j{0}; j < rank; ++j) {
1242 for (std::size_t j{0}; j < rank; ++j) {