@@ -581,6 +581,27 @@ class ComprehensionExpr final {
581581 return release (iter_var_);
582582 }
583583
584+ ABSL_MUST_USE_RESULT const std::string& iter_var2 () const
585+ ABSL_ATTRIBUTE_LIFETIME_BOUND {
586+ return iter_var2_;
587+ }
588+
589+ void set_iter_var2 (std::string iter_var2) {
590+ iter_var2_ = std::move (iter_var2);
591+ }
592+
593+ void set_iter_var2 (absl::string_view iter_var2) {
594+ iter_var2_.assign (iter_var2.data (), iter_var2.size ());
595+ }
596+
597+ void set_iter_var2 (const char * iter_var2) {
598+ set_iter_var2 (absl::NullSafeStringView (iter_var2));
599+ }
600+
601+ ABSL_MUST_USE_RESULT std::string release_iter_var2 () {
602+ return release (iter_var2_);
603+ }
604+
584605 ABSL_MUST_USE_RESULT bool has_iter_range () const {
585606 return iter_range_ != nullptr ;
586607 }
@@ -685,6 +706,7 @@ class ComprehensionExpr final {
685706 friend void swap (ComprehensionExpr& lhs, ComprehensionExpr& rhs) noexcept {
686707 using std::swap;
687708 swap (lhs.iter_var_ , rhs.iter_var_ );
709+ swap (lhs.iter_var2_ , rhs.iter_var2_ );
688710 swap (lhs.iter_range_ , rhs.iter_range_ );
689711 swap (lhs.accu_var_ , rhs.accu_var_ );
690712 swap (lhs.accu_init_ , rhs.accu_init_ );
@@ -711,6 +733,7 @@ class ComprehensionExpr final {
711733 }
712734
713735 std::string iter_var_;
736+ std::string iter_var2_;
714737 std::unique_ptr<Expr> iter_range_;
715738 std::string accu_var_;
716739 std::unique_ptr<Expr> accu_init_;
0 commit comments