19#ifndef INCLUDED_TOOLS_BIGINT_HXX
20#define INCLUDED_TOOLS_BIGINT_HXX
22#include <rtl/ustring.hxx>
66#if SAL_TYPES_SIZEOFLONG == 4
79 BigInt( std::u16string_view rString );
81 operator sal_Int16()
const;
82 operator sal_uInt16()
const;
83 operator sal_Int32()
const;
84 operator sal_uInt32()
const;
85 operator double()
const;
86#if SAL_TYPES_SIZEOFPOINTER == 8
92 bool IsLong()
const {
return nLen == 0; }
103 BigInt& operator =( sal_Int32 nValue );
124inline BigInt::operator sal_Int16()
const
127 return static_cast<sal_Int16
>(nVal);
128 assert(
false &&
"out of range");
132inline BigInt::operator sal_uInt16()
const
135 return static_cast<sal_uInt16
>(nVal);
136 assert(
false &&
"out of range");
140inline BigInt::operator sal_Int32()
const
144 assert(
false &&
"out of range");
148inline BigInt::operator sal_uInt32()
const
150 if ( nLen == 0 && nVal >= 0 )
151 return static_cast<sal_uInt32
>(nVal);
152 assert(
false &&
"out of range");
156#if SAL_TYPES_SIZEOFPOINTER == 8
162 assert(
false &&
"out of range");
236 return !(rVal1 == rVal2);
243 return !( rVal1 > rVal2);
248 return !(rVal1 < rVal2);
bool operator==(const BigInt &rVal1, const BigInt &rVal2)
bool operator<(const BigInt &rVal1, const BigInt &rVal2)
BigInt operator+(const BigInt &rVal1, const BigInt &rVal2)
BigInt operator*(const BigInt &rVal1, const BigInt &rVal2)
BigInt operator-(const BigInt &rVal1, const BigInt &rVal2)
BigInt operator/(const BigInt &rVal1, const BigInt &rVal2)
bool operator>(const BigInt &rVal1, const BigInt &rVal2)
BigInt operator%(const BigInt &rVal1, const BigInt &rVal2)
bool operator<=(const BigInt &rVal1, const BigInt &rVal2)
bool operator!=(const BigInt &rVal1, const BigInt &rVal2)
bool operator>=(const BigInt &rVal1, const BigInt &rVal2)
BigInt & operator=(const BigInt &rVal)
tools::Rectangle & operator+=(tools::Rectangle &rRect, const SvBorder &rBorder)