File tree Expand file tree Collapse file tree 2 files changed +9
-1
lines changed
Expand file tree Collapse file tree 2 files changed +9
-1
lines changed Original file line number Diff line number Diff line change @@ -217,6 +217,14 @@ namespace Rcpp {
217217 setBuffer (); buffer += CHAR (proxy_sexp); valid = false ;
218218 return *this ;
219219 }
220+ inline String& operator +=(const const_StringProxy& proxy) {
221+ RCPP_STRING_DEBUG (" String::operator+=(const StringProxy&)" );
222+ if (is_na ()) return *this ;
223+ SEXP proxy_sexp = proxy;
224+ if (proxy_sexp == NA_STRING) { data = Rcpp_ReplaceObject (data, NA_STRING); valid = true ; buffer_ready = false ; return *this ;}
225+ setBuffer (); buffer += CHAR (proxy_sexp); valid = false ;
226+ return *this ;
227+ }
220228 inline String& operator +=(SEXP x) {
221229 RCPP_STRING_DEBUG (" String::operator+=(SEXP)" );
222230 if (is_na ()) return *this ;
Original file line number Diff line number Diff line change @@ -112,7 +112,7 @@ class Proxy_Iterator {
112112
113113 inline int index () const { return proxy.index ; }
114114
115- inline PROXY operator [](R_xlen_t i){ return PROXY (*proxy.parent , proxy.index + i) ; }
115+ inline PROXY operator [](R_xlen_t i) const { return PROXY (*proxy.parent , proxy.index + i) ; }
116116
117117private:
118118 PROXY proxy ;
You can’t perform that action at this time.
0 commit comments