9#ifndef FIMS_INTERFACE_RCPP_RCPP_OBJECTS_SHARED_PRIMITIVE_HPP
10#define FIMS_INTERFACE_RCPP_RCPP_OBJECTS_SHARED_PRIMITIVE_HPP
26 std::shared_ptr<int> value;
109 if (
this != &
other) {
110 value = std::move(
other.value);
122 int get()
const {
return *value; }
370 *value += *
other.value;
384 *value -= *
other.value;
399 *value *= *
other.value;
413 *value /= *
other.value;
492 return *value == *
other.value;
505 return *value != *
other.value;
531 return *value <= *
other.value;
557 return *value >= *
other.value;
741 return (
lhs <=
rhs.get());
771 return (
lhs >=
rhs.get());
786 std::shared_ptr<int> value;
829 if (
this != &
other) {
875 if (
this != &
other) {
876 value = std::move(
other.value);
890 int get()
const {
return *value; }
1146 *value += *
other.value;
1161 *value -= *
other.value;
1176 *value *= *
other.value;
1191 *value /= *
other.value;
1272 return *value == *
other.value;
1286 return *value != *
other.value;
1300 return *value < *
other.value;
1314 return *value <= *
other.value;
1328 return *value > *
other.value;
1342 return *value >= *
other.value;
1510 std::shared_ptr<std::string> value;
1553 if (
this != &
other) {
1554 value =
other.value;
1597 if (
this != &
other) {
1598 value = std::move(
other.value);
1612 std::string
get()
const {
return *value; }
1632 operator std::string() {
return this->
get(); }
1701 std::shared_ptr<bool> value;
1744 if (
this != &
other) {
1745 value =
other.value;
1776 : value(std::move(
other.value)) {}
1789 if (
this != &
other) {
1790 value = std::move(
other.value);
1804 bool get()
const {
return *value; }
1874 return *value == *
other.value;
1888 return *value != *
other.value;
1902 return *value < *
other.value;
1916 return *value <= *
other.value;
1930 return *value > *
other.value;
1944 return *value >= *
other.value;
2047 return (
lhs <
rhs.get());
2062 return (
lhs <=
rhs.get());
2077 return (
lhs >
rhs.get());
2092 return (
lhs >=
rhs.get());
A class that provides shared ownership of a boolean value.
Definition rcpp_shared_primitive.hpp:1699
SharedBoolean(SharedBoolean &&other) noexcept
Constructs a new SharedBoolean object by moving resources.
Definition rcpp_shared_primitive.hpp:1775
bool operator!=(const bool &other) const
Overloads the inequality operator (!=) for a boolean value.
Definition rcpp_shared_primitive.hpp:1967
SharedBoolean(bool val)
Constructs a new SharedBoolean object from a boolean value.
Definition rcpp_shared_primitive.hpp:1720
bool operator>=(const bool &other) const
Overloads the greater-than-or-equal-to operator (>=) for a boolean.
Definition rcpp_shared_primitive.hpp:2016
bool operator<(const bool &other) const
Overloads the less-than operator (<) for a boolean value.
Definition rcpp_shared_primitive.hpp:1979
bool operator<(const SharedBoolean &other) const
Overloads the less-than operator (<).
Definition rcpp_shared_primitive.hpp:1901
SharedBoolean(const SharedBoolean &other)
Copy constructs a new SharedBoolean object.
Definition rcpp_shared_primitive.hpp:1730
SharedBoolean & operator=(const bool &other)
Overloaded assignment operator for a boolean value.
Definition rcpp_shared_primitive.hpp:1760
const bool * operator->() const
Overloads the member access operator (->) for const objects.
Definition rcpp_shared_primitive.hpp:1861
bool operator>=(const SharedBoolean &other) const
Overloads the greater-than-or-equal-to operator (>=).
Definition rcpp_shared_primitive.hpp:1943
SharedBoolean & operator=(const SharedBoolean &other)
Overloaded copy assignment operator.
Definition rcpp_shared_primitive.hpp:1743
bool operator!=(const SharedBoolean &other) const
Overloads the inequality operator (!=).
Definition rcpp_shared_primitive.hpp:1887
bool operator==(const SharedBoolean &other) const
Overloads the equality operator (==).
Definition rcpp_shared_primitive.hpp:1873
void set(bool val)
Sets the boolean value of the object.
Definition rcpp_shared_primitive.hpp:1813
bool operator>(const SharedBoolean &other) const
Overloads the greater-than operator (>).
Definition rcpp_shared_primitive.hpp:1929
bool operator==(const bool &other) const
Overloads the equality operator (==) for a boolean value.
Definition rcpp_shared_primitive.hpp:1956
bool * operator->()
Overloads the member access operator (->).
Definition rcpp_shared_primitive.hpp:1847
SharedBoolean & operator=(SharedBoolean &&other) noexcept
Overloaded move assignment operator.
Definition rcpp_shared_primitive.hpp:1788
bool operator<=(const bool &other) const
Overloads the less-than-or-equal-to operator (<=) for a boolean.
Definition rcpp_shared_primitive.hpp:1991
bool get() const
Retrieves the boolean value managed by the object.
Definition rcpp_shared_primitive.hpp:1804
friend std::ostream & operator<<(std::ostream &os, const SharedBoolean &sp)
Overloads the stream insertion operator (<<) for SharedBoolean.
Definition rcpp_shared_primitive.hpp:2029
bool operator<=(const SharedBoolean &other) const
Overloads the less-than-or-equal-to operator (<=).
Definition rcpp_shared_primitive.hpp:1915
SharedBoolean()
Constructs a new SharedBoolean object with a default value.
Definition rcpp_shared_primitive.hpp:1710
bool operator>(const bool &other) const
Overloads the greater-than operator (>) for a boolean value.
Definition rcpp_shared_primitive.hpp:2003
bool operator*() const
Overloads the dereference operator (*).
Definition rcpp_shared_primitive.hpp:1835
A class that provides shared ownership of an integer value.
Definition rcpp_shared_primitive.hpp:24
SharedInt operator/(const SharedInt &other) const
Overloads the binary division operator (/).
Definition rcpp_shared_primitive.hpp:296
void set(int val)
Change the value of the integer.
Definition rcpp_shared_primitive.hpp:129
int * operator->()
Overloads the member access operator (->).
Definition rcpp_shared_primitive.hpp:165
SharedInt()
Construct a new SharedInt object.
Definition rcpp_shared_primitive.hpp:33
SharedInt & operator--()
Overloads the prefix decrement operator (--).
Definition rcpp_shared_primitive.hpp:220
bool operator!=(const SharedInt &other) const
Overloads the inequality operator (!=).
Definition rcpp_shared_primitive.hpp:504
SharedInt operator*(const SharedInt &other) const
Overloads the binary multiplication operator (*).
Definition rcpp_shared_primitive.hpp:282
SharedInt & operator++()
Overloads the prefix increment operator (++).
Definition rcpp_shared_primitive.hpp:190
SharedInt & operator*=(const int &other)
Overloads the compound assignment operator (*=) for a shared integer value.
Definition rcpp_shared_primitive.hpp:460
SharedInt & operator*=(const SharedInt &other)
Overloads the compound assignment operator (*=).
Definition rcpp_shared_primitive.hpp:398
bool operator!=(const int &other) const
Overloads the inequality operator (!=) for an integer value.
Definition rcpp_shared_primitive.hpp:582
int operator*() const
Overloads the dereference operator.
Definition rcpp_shared_primitive.hpp:153
SharedInt & operator/=(const int &other)
Overloads the compound assignment operator (/=) for a shared integer value.
Definition rcpp_shared_primitive.hpp:475
SharedInt operator++(int)
Overloads the postfix increment operator (++).
Definition rcpp_shared_primitive.hpp:205
bool operator>(const SharedInt &other) const
Overloads the greater-than operator (>).
Definition rcpp_shared_primitive.hpp:544
const int * operator->() const
Overloads the member access operator (->) for const objects.
Definition rcpp_shared_primitive.hpp:177
SharedInt operator+(const SharedInt &other) const
Overloads the binary addition operator (+).
Definition rcpp_shared_primitive.hpp:253
SharedInt & operator=(SharedInt &&other) noexcept
Overloaded move assignment operator.
Definition rcpp_shared_primitive.hpp:108
SharedInt operator/(const int &other) const
Overloads the binary division operator for an integer value.
Definition rcpp_shared_primitive.hpp:354
SharedInt & operator-=(const SharedInt &other)
Overloads the compound assignment operator (-=).
Definition rcpp_shared_primitive.hpp:383
SharedInt & operator=(const SharedInt &other)
Overloaded assignment operator for copying a SharedInt object.
Definition rcpp_shared_primitive.hpp:65
SharedInt & operator-=(const int &other)
Overloads the compound assignment operator (-=) for a shared integer value.
Definition rcpp_shared_primitive.hpp:444
SharedInt & operator=(const int &other)
Overloaded assignment operator for an integer value.
Definition rcpp_shared_primitive.hpp:81
SharedInt operator*(const int &other) const
Overloads the binary multiplication operator for an integer value.
Definition rcpp_shared_primitive.hpp:340
bool operator>=(const int &other) const
Overloads the greater-than-or-equal-to operator (>=) for an integer value.
Definition rcpp_shared_primitive.hpp:632
SharedInt & operator+=(const SharedInt &other)
Overloads the compound assignment operator (+=).
Definition rcpp_shared_primitive.hpp:369
SharedInt operator--(int)
Overloads the postfix decrement operator.
Definition rcpp_shared_primitive.hpp:235
SharedInt(int val)
Constructs a new SharedInt object.
Definition rcpp_shared_primitive.hpp:43
bool operator==(const SharedInt &other) const
Overloads the equality operator (==).
Definition rcpp_shared_primitive.hpp:491
bool operator<=(const SharedInt &other) const
Overloads the less-than-or-equal-to operator (<=).
Definition rcpp_shared_primitive.hpp:530
SharedInt(SharedInt &&other) noexcept
Constructs a new SharedInt object by moving resources.
Definition rcpp_shared_primitive.hpp:96
SharedInt operator+(const int &other) const
Overloads the binary addition operator for an integer value.
Definition rcpp_shared_primitive.hpp:312
bool operator<=(const int &other) const
Overloads the less-than-or-equal-to operator (<=) for an integer value.
Definition rcpp_shared_primitive.hpp:607
SharedInt operator-(const SharedInt &other) const
Overloads the binary subtraction operator (-).
Definition rcpp_shared_primitive.hpp:268
SharedInt & operator+=(const int &other)
Overloads the compound assignment operator (+=) for a shared integer value.
Definition rcpp_shared_primitive.hpp:429
bool operator>(const int &other) const
Overloads the greater-than operator (>) for an integer value.
Definition rcpp_shared_primitive.hpp:619
bool operator<(const SharedInt &other) const
Overloads the less-than operator (<).
Definition rcpp_shared_primitive.hpp:518
SharedInt operator-(const int &other) const
Overloads the binary subtraction operator for an integer value.
Definition rcpp_shared_primitive.hpp:326
friend std::ostream & operator<<(std::ostream &os, const SharedInt &sp)
Overloads the stream insertion operator (<<) for SharedInt.
Definition rcpp_shared_primitive.hpp:644
bool operator==(const int &other) const
Overloads the equality operator (==) for an integer value.
Definition rcpp_shared_primitive.hpp:571
bool operator>=(const SharedInt &other) const
Overloads the greater-than-or-equal-to operator (>=).
Definition rcpp_shared_primitive.hpp:556
bool operator<(const int &other) const
Overloads the less-than operator (<) for an integer value.
Definition rcpp_shared_primitive.hpp:594
SharedInt(const SharedInt &other)
Copy constructs a new SharedInt object.
Definition rcpp_shared_primitive.hpp:53
int get() const
Retrieve the value of the integer.
Definition rcpp_shared_primitive.hpp:122
SharedInt & operator/=(const SharedInt &other)
Overloads the compound assignment operator (/=).
Definition rcpp_shared_primitive.hpp:412
A class that provides shared ownership of an integer value.
Definition rcpp_shared_primitive.hpp:784
SharedReal & operator=(const int &other)
Overloaded assignment operator for an integer value.
Definition rcpp_shared_primitive.hpp:845
SharedReal operator+(const SharedReal &other) const
Overloads the binary addition operator (+).
Definition rcpp_shared_primitive.hpp:1024
bool operator>=(const SharedReal &other) const
Overloads the greater-than-or-equal-to operator (>=).
Definition rcpp_shared_primitive.hpp:1341
bool operator>=(const int &other) const
Overloads the greater-than-or-equal-to operator (>=) for an integer.
Definition rcpp_shared_primitive.hpp:1417
SharedReal & operator+=(const int &other)
Overloads the compound assignment operator (+=) for an integer.
Definition rcpp_shared_primitive.hpp:1206
void set(int val)
Sets the integer value of the object.
Definition rcpp_shared_primitive.hpp:899
int * operator->()
Overloads the member access operator (->).
Definition rcpp_shared_primitive.hpp:935
SharedReal & operator/=(const int &other)
Overloads the compound assignment operator (/=) for an integer.
Definition rcpp_shared_primitive.hpp:1254
SharedReal & operator*=(const SharedReal &other)
Overloads the compound assignment operator (*=).
Definition rcpp_shared_primitive.hpp:1175
bool operator==(const int &other) const
Overloads the equality operator (==) for an integer value.
Definition rcpp_shared_primitive.hpp:1356
SharedReal & operator*=(const int &other)
Overloads the compound assignment operator (*=) for an integer.
Definition rcpp_shared_primitive.hpp:1238
SharedReal operator*(const int &other) const
Overloads the binary multiplication operator (*) for an integer.
Definition rcpp_shared_primitive.hpp:1115
SharedReal operator-(const SharedReal &other) const
Overloads the binary subtraction operator (-).
Definition rcpp_shared_primitive.hpp:1040
bool operator!=(const SharedReal &other) const
Overloads the inequality operator (!=).
Definition rcpp_shared_primitive.hpp:1285
bool operator<=(const SharedReal &other) const
Overloads the less-than-or-equal-to operator (<=).
Definition rcpp_shared_primitive.hpp:1313
SharedReal operator++(int)
Overloads the postfix increment operator.
Definition rcpp_shared_primitive.hpp:975
SharedReal & operator=(SharedReal &&other) noexcept
Overloaded move assignment operator.
Definition rcpp_shared_primitive.hpp:874
SharedReal & operator-=(const SharedReal &other)
Overloads the compound assignment operator (-=).
Definition rcpp_shared_primitive.hpp:1160
const int * operator->() const
Overloads the member access operator (->) for const objects.
Definition rcpp_shared_primitive.hpp:947
SharedReal & operator+=(const SharedReal &other)
Overloads the compound assignment operator (+=).
Definition rcpp_shared_primitive.hpp:1145
bool operator>(const SharedReal &other) const
Overloads the greater-than operator (>).
Definition rcpp_shared_primitive.hpp:1327
int operator*() const
Overloads the dereference operator (*).
Definition rcpp_shared_primitive.hpp:923
SharedReal operator-(const int &other) const
Overloads the binary subtraction operator (-) for an integer.
Definition rcpp_shared_primitive.hpp:1100
SharedReal & operator--()
Overloads the prefix decrement operator (--).
Definition rcpp_shared_primitive.hpp:991
SharedReal operator/(const SharedReal &other) const
Overloads the binary division operator (/).
Definition rcpp_shared_primitive.hpp:1070
SharedReal()
Constructs a new SharedReal object with a default value.
Definition rcpp_shared_primitive.hpp:795
SharedReal & operator/=(const SharedReal &other)
Overloads the compound assignment operator (/=).
Definition rcpp_shared_primitive.hpp:1190
friend std::ostream & operator<<(std::ostream &os, const SharedReal &sp)
Overloads the stream insertion operator (<<) for SharedReal.
Definition rcpp_shared_primitive.hpp:1429
SharedReal & operator-=(const int &other)
Overloads the compound assignment operator (-=) for an integer.
Definition rcpp_shared_primitive.hpp:1222
SharedReal operator*(const SharedReal &other) const
Overloads the binary multiplication operator (*).
Definition rcpp_shared_primitive.hpp:1055
SharedReal operator/(const int &other) const
Overloads the binary division operator (/) for an integer.
Definition rcpp_shared_primitive.hpp:1129
SharedReal & operator++()
Overloads the prefix increment operator (++).
Definition rcpp_shared_primitive.hpp:960
SharedReal & operator=(const SharedReal &other)
Overloaded copy assignment operator.
Definition rcpp_shared_primitive.hpp:828
bool operator!=(const int &other) const
Overloads the inequality operator (!=) for an integer.
Definition rcpp_shared_primitive.hpp:1367
int get() const
Retrieves the integer value managed by the object.
Definition rcpp_shared_primitive.hpp:890
SharedReal(SharedReal &&other) noexcept
Constructs a new SharedReal object by moving resources.
Definition rcpp_shared_primitive.hpp:861
SharedReal(const SharedReal &other)
Copy constructs a new SharedReal object.
Definition rcpp_shared_primitive.hpp:815
bool operator>(const int &other) const
Overloads the greater-than operator (>) for an integer.
Definition rcpp_shared_primitive.hpp:1404
bool operator<=(const int &other) const
Overloads the less-than-or-equal-to operator (<=) for an integer.
Definition rcpp_shared_primitive.hpp:1392
bool operator<(const int &other) const
Overloads the less-than operator (<) for an integer.
Definition rcpp_shared_primitive.hpp:1379
SharedReal operator--(int)
Overloads the postfix decrement operator.
Definition rcpp_shared_primitive.hpp:1006
bool operator==(const SharedReal &other) const
Overloads the equality operator (==).
Definition rcpp_shared_primitive.hpp:1271
SharedReal(int val)
Constructs a new SharedReal object from an integer value.
Definition rcpp_shared_primitive.hpp:805
SharedReal operator+(const int &other) const
Overloads the binary addition operator (+) for an integer.
Definition rcpp_shared_primitive.hpp:1086
bool operator<(const SharedReal &other) const
Overloads the less-than operator (<).
Definition rcpp_shared_primitive.hpp:1299
A class that provides shared ownership of a string.
Definition rcpp_shared_primitive.hpp:1508
operator std::string()
User-defined conversion to std::string.
Definition rcpp_shared_primitive.hpp:1632
const std::string * operator->() const
Overloads the member access operator (->) for const objects.
Definition rcpp_shared_primitive.hpp:1669
SharedString & operator=(SharedString &&other) noexcept
Overloaded move assignment operator.
Definition rcpp_shared_primitive.hpp:1596
SharedString(SharedString &&other) noexcept
Constructs a new SharedString object by moving resources.
Definition rcpp_shared_primitive.hpp:1584
std::string get() const
Retrieves the string value managed by the object.
Definition rcpp_shared_primitive.hpp:1612
std::string * operator->()
Overloads the member access operator (->).
Definition rcpp_shared_primitive.hpp:1655
SharedString(const SharedString &other)
Copy constructs a new SharedString object.
Definition rcpp_shared_primitive.hpp:1539
SharedString(std::string val)
Constructs a new SharedString object from a string value.
Definition rcpp_shared_primitive.hpp:1529
friend std::ostream & operator<<(std::ostream &os, const SharedString &sp)
Overloads the stream insertion operator (<<) for SharedString.
Definition rcpp_shared_primitive.hpp:1683
SharedString & operator=(const SharedString &other)
Overloaded copy assignment operator.
Definition rcpp_shared_primitive.hpp:1552
void set(std::string val)
Sets the string value of the object.
Definition rcpp_shared_primitive.hpp:1621
SharedString & operator=(const std::string &other)
Overloaded assignment operator for a string value.
Definition rcpp_shared_primitive.hpp:1569
std::string operator*() const
Overloads the dereference operator (*).
Definition rcpp_shared_primitive.hpp:1643
SharedString()
Constructs a new SharedString object with a default, empty value.
Definition rcpp_shared_primitive.hpp:1519
void clear_internal()
Clears the internal objects.
Definition rcpp_interface.hpp:279
SharedInt operator-(const int &lhs, const SharedInt &rhs)
Overloads the binary subtraction operator (-) for an integer left-hand side operand.
Definition rcpp_shared_primitive.hpp:680
SharedReal fims_double
An alias for the SharedReal class.
Definition rcpp_shared_primitive.hpp:2110
SharedBoolean fims_bool
An alias for the SharedBoolean class.
Definition rcpp_shared_primitive.hpp:2126
SharedInt operator+(const int &lhs, const SharedInt &rhs)
Overloads the binary addition operator (+) for an integer left-hand side operand.
Definition rcpp_shared_primitive.hpp:664
bool operator>(const int &lhs, const SharedInt &rhs)
Overloads the greater-than operator (>) for an integer left-hand side operand.
Definition rcpp_shared_primitive.hpp:755
SharedInt fims_int
An alias for the SharedInt class.
Definition rcpp_shared_primitive.hpp:2102
bool operator>=(const int &lhs, const SharedInt &rhs)
Overloads the greater-than-or-equal-to operator (>=) for an integer left-hand side operand.
Definition rcpp_shared_primitive.hpp:770
SharedInt operator/(const int &lhs, const SharedInt &rhs)
Overloads the binary division operator (/) for an integer left-hand side operand.
Definition rcpp_shared_primitive.hpp:710
SharedInt operator*(const int &lhs, const SharedInt &rhs)
Overloads the binary multiplication operator (*) for an integer left-hand side operand.
Definition rcpp_shared_primitive.hpp:695
bool operator<(const int &lhs, const SharedInt &rhs)
Overloads the less-than operator (<) for an integer left-hand side operand.
Definition rcpp_shared_primitive.hpp:725
bool operator<=(const int &lhs, const SharedInt &rhs)
Overloads the less-than-or-equal-to operator (<=) for an integer left-hand side operand.
Definition rcpp_shared_primitive.hpp:740
SharedString fims_string
An alias for the SharedString class.
Definition rcpp_shared_primitive.hpp:2118