Lines Matching defs:FoldDesignator
16 std::optional<OffsetSymbol> DesignatorFolder::FoldDesignator(
47 std::optional<OffsetSymbol> DesignatorFolder::FoldDesignator(
59 result = FoldDesignator(x.base(), which);
62 result = FoldDesignator(x.base(), 0);
142 std::optional<OffsetSymbol> DesignatorFolder::FoldDesignator(
146 return FoldDesignator(comp, which);
151 baseResult = FoldDesignator(base, 0);
152 compResult = FoldDesignator(comp, which);
154 baseResult = FoldDesignator(base, which);
155 compResult = FoldDesignator(comp, 0);
168 std::optional<OffsetSymbol> DesignatorFolder::FoldDesignator(
170 if (auto result{FoldDesignator(z.complex(), which)}) {
181 std::optional<OffsetSymbol> DesignatorFolder::FoldDesignator(
184 [&](const auto &x) { return FoldDesignator(x, which); }, dataRef.u);
187 std::optional<OffsetSymbol> DesignatorFolder::FoldDesignator(
189 return entity.IsSymbol() ? FoldDesignator(entity.GetLastSymbol(), which)
190 : FoldDesignator(entity.GetComponent(), which);
193 std::optional<OffsetSymbol> DesignatorFolder::FoldDesignator(
198 std::optional<OffsetSymbol> DesignatorFolder::FoldDesignator(
202 return FoldDesignator(*component, which);
206 return FoldDesignator(*symbol, 0);
398 auto folded{designatorFolder.FoldDesignator(expr)};
427 CHECK(!designatorFolder.FoldDesignator(expr));