File tree Expand file tree Collapse file tree 2 files changed +22
-22
lines changed
inst/include/Rcpp/sugar/functions Expand file tree Collapse file tree 2 files changed +22
-22
lines changed Original file line number Diff line number Diff line change @@ -32,22 +32,22 @@ namespace sugar{
3232
3333 Max ( const T& obj_) : obj(obj_) {}
3434
35- operator STORAGE () {
36- max_ = obj[0 ] ;
37- if ( Rcpp::traits::is_na<RTYPE>( max_ ) ) return max_ ;
35+ operator STORAGE () const {
36+ STORAGE max, current ;
37+ max = obj[0 ] ;
38+ if ( Rcpp::traits::is_na<RTYPE>( max ) ) return max ;
3839
3940 R_xlen_t n = obj.size () ;
4041 for ( R_xlen_t i=1 ; i<n; i++){
4142 current = obj[i] ;
4243 if ( Rcpp::traits::is_na<RTYPE>( current ) ) return current;
43- if ( current > max_ ) max_ = current ;
44+ if ( current > max ) max = current ;
4445 }
45- return max_ ;
46+ return max ;
4647 }
4748
4849 private:
4950 const T& obj ;
50- STORAGE min_, max_, current ;
5151 } ;
5252
5353 // version for NA = false
@@ -58,20 +58,20 @@ namespace sugar{
5858
5959 Max ( const T& obj_) : obj(obj_) {}
6060
61- operator STORAGE () {
62- max_ = obj[0 ] ;
61+ operator STORAGE () const {
62+ STORAGE max, current ;
63+ max = obj[0 ] ;
6364
6465 R_xlen_t n = obj.size () ;
6566 for ( R_xlen_t i=1 ; i<n; i++){
6667 current = obj[i] ;
67- if ( current > max_ ) max_ = current ;
68+ if ( current > max ) max = current ;
6869 }
69- return max_ ;
70+ return max ;
7071 }
7172
7273 private:
7374 const T& obj ;
74- STORAGE max_, current ;
7575 } ;
7676
7777
Original file line number Diff line number Diff line change @@ -32,21 +32,21 @@ namespace sugar{
3232
3333 Min ( const T& obj_) : obj(obj_) {}
3434
35- operator STORAGE () {
36- min_ = obj[0 ] ;
37- if ( Rcpp::traits::is_na<RTYPE>( min_ ) ) return min_ ;
35+ operator STORAGE () const {
36+ STORAGE min, current ;
37+ min = obj[0 ] ;
38+ if ( Rcpp::traits::is_na<RTYPE>( min ) ) return min ;
3839
3940 R_xlen_t n = obj.size () ;
4041 for ( R_xlen_t i=1 ; i<n; i++){
4142 current = obj[i] ;
4243 if ( Rcpp::traits::is_na<RTYPE>( current ) ) return current;
43- if ( current < min_ ) min_ = current ;
44+ if ( current < min ) min = current ;
4445 }
45- return min_ ;
46+ return min ;
4647 }
4748
4849 const T& obj ;
49- STORAGE min_, max_, current ;
5050 } ;
5151
5252 // version for NA = false
@@ -57,19 +57,19 @@ namespace sugar{
5757
5858 Min ( const T& obj_) : obj(obj_) {}
5959
60- operator STORAGE () {
61- min_ = obj[0 ] ;
60+ operator STORAGE () const {
61+ STORAGE min, current ;
62+ min = obj[0 ] ;
6263
6364 R_xlen_t n = obj.size () ;
6465 for ( R_xlen_t i=1 ; i<n; i++){
6566 current = obj[i] ;
66- if ( current < min_ ) min_ = current ;
67+ if ( current < min ) min = current ;
6768 }
68- return min_ ;
69+ return min ;
6970 }
7071
7172 const T& obj ;
72- STORAGE min_, current ;
7373 } ;
7474
7575
You can’t perform that action at this time.
0 commit comments