summaryrefslogtreecommitdiff
path: root/include/tools/fract.hxx
diff options
context:
space:
mode:
authorKohei Yoshida <kohei.yoshida@collabora.com>2014-11-15 22:34:15 -0500
committerKohei Yoshida <kohei.yoshida@gmail.com>2014-11-17 16:37:33 -0500
commit0348341f5ef8b92ed26451e90e42355bdf83e2f3 (patch)
treeedf02709cef1792d9724aabd8180d83a8006db61 /include/tools/fract.hxx
parent07a086feaf6d045849cc6474ffe95f61b9021fa1 (diff)
Make these methods non-inline.
Change-Id: I0b24e34dec6c452659b224b45a6849dafe708c3b
Diffstat (limited to 'include/tools/fract.hxx')
-rw-r--r--include/tools/fract.hxx119
1 files changed, 18 insertions, 101 deletions
diff --git a/include/tools/fract.hxx b/include/tools/fract.hxx
index 0e8115533546..597876f4f0ee 100644
--- a/include/tools/fract.hxx
+++ b/include/tools/fract.hxx
@@ -58,112 +58,29 @@ public:
void ReduceInaccurate( unsigned nSignificantBits );
- friend inline Fraction operator+( const Fraction& rVal1, const Fraction& rVal2 );
- friend inline Fraction operator-( const Fraction& rVal1, const Fraction& rVal2 );
- friend inline Fraction operator*( const Fraction& rVal1, const Fraction& rVal2 );
- friend inline Fraction operator/( const Fraction& rVal1, const Fraction& rVal2 );
-
- TOOLS_DLLPUBLIC friend bool operator==( const Fraction& rVal1, const Fraction& rVal2 );
- friend inline bool operator!=( const Fraction& rVal1, const Fraction& rVal2 );
- TOOLS_DLLPUBLIC friend bool operator< ( const Fraction& rVal1, const Fraction& rVal2 );
- TOOLS_DLLPUBLIC friend bool operator> ( const Fraction& rVal1, const Fraction& rVal2 );
- friend inline bool operator<=( const Fraction& rVal1, const Fraction& rVal2 );
- friend inline bool operator>=( const Fraction& rVal1, const Fraction& rVal2 );
+ TOOLS_DLLPUBLIC friend Fraction operator+( const Fraction& rVal1, const Fraction& rVal2 );
+ TOOLS_DLLPUBLIC friend Fraction operator-( const Fraction& rVal1, const Fraction& rVal2 );
+ TOOLS_DLLPUBLIC friend Fraction operator*( const Fraction& rVal1, const Fraction& rVal2 );
+ TOOLS_DLLPUBLIC friend Fraction operator/( const Fraction& rVal1, const Fraction& rVal2 );
+
+ TOOLS_DLLPUBLIC friend bool operator==( const Fraction& rVal1, const Fraction& rVal2 );
+ TOOLS_DLLPUBLIC friend bool operator!=( const Fraction& rVal1, const Fraction& rVal2 );
+ TOOLS_DLLPUBLIC friend bool operator< ( const Fraction& rVal1, const Fraction& rVal2 );
+ TOOLS_DLLPUBLIC friend bool operator> ( const Fraction& rVal1, const Fraction& rVal2 );
+ TOOLS_DLLPUBLIC friend bool operator<=( const Fraction& rVal1, const Fraction& rVal2 );
+ TOOLS_DLLPUBLIC friend bool operator>=( const Fraction& rVal1, const Fraction& rVal2 );
TOOLS_DLLPUBLIC friend SvStream& ReadFraction( SvStream& rIStream, Fraction& rFract );
TOOLS_DLLPUBLIC friend SvStream& WriteFraction( SvStream& rOStream, const Fraction& rFract );
};
-inline Fraction::Fraction( const Fraction& rFrac )
-{
- valid = rFrac.valid;
- if ( valid )
- value.assign( rFrac.value.numerator(), rFrac.value.denominator() );
-}
-
-inline long Fraction::GetNumerator() const
-{
- if ( !valid ) {
- SAL_WARN( "tools.fraction", "'GetNumerator()' on invalid fraction" );
- return 0;
- }
- return value.numerator();
-}
-
-inline long Fraction::GetDenominator() const {
- if ( !valid ) {
- SAL_WARN( "tools.fraction", "'GetDenominator()' on invalid fraction" );
- return -1;
- }
- return value.denominator();
-}
-
-inline Fraction& Fraction::operator=( const Fraction& rFrac )
-{
- if ( this != &rFrac ) {
- valid = rFrac.valid;
- if ( valid )
- value.assign( rFrac.value.numerator(), rFrac.value.denominator() );
- }
- return *this;
-}
-
-inline bool Fraction::IsValid() const
-{
- return valid;
-}
-
-inline Fraction::operator long() const
-{
- if ( !valid ) {
- SAL_WARN( "tools.fraction", "'operator long()' on invalid fraction" );
- return 0;
- }
- return boost::rational_cast<long>(value);
-}
-
-inline Fraction operator+( const Fraction& rVal1, const Fraction& rVal2 )
-{
- Fraction aErg( rVal1 );
- aErg += rVal2;
- return aErg;
-}
-
-inline Fraction operator-( const Fraction& rVal1, const Fraction& rVal2 )
-{
- Fraction aErg( rVal1 );
- aErg -= rVal2;
- return aErg;
-}
-
-inline Fraction operator*( const Fraction& rVal1, const Fraction& rVal2 )
-{
- Fraction aErg( rVal1 );
- aErg *= rVal2;
- return aErg;
-}
-
-inline Fraction operator/( const Fraction& rVal1, const Fraction& rVal2 )
-{
- Fraction aErg( rVal1 );
- aErg /= rVal2;
- return aErg;
-}
-
-inline bool operator !=( const Fraction& rVal1, const Fraction& rVal2 )
-{
- return !(rVal1 == rVal2);
-}
-
-inline bool operator <=( const Fraction& rVal1, const Fraction& rVal2 )
-{
- return !(rVal1 > rVal2);
-}
-
-inline bool operator >=( const Fraction& rVal1, const Fraction& rVal2 )
-{
- return !(rVal1 < rVal2);
-}
+TOOLS_DLLPUBLIC Fraction operator+( const Fraction& rVal1, const Fraction& rVal2 );
+TOOLS_DLLPUBLIC Fraction operator-( const Fraction& rVal1, const Fraction& rVal2 );
+TOOLS_DLLPUBLIC Fraction operator*( const Fraction& rVal1, const Fraction& rVal2 );
+TOOLS_DLLPUBLIC Fraction operator/( const Fraction& rVal1, const Fraction& rVal2 );
+TOOLS_DLLPUBLIC bool operator !=( const Fraction& rVal1, const Fraction& rVal2 );
+TOOLS_DLLPUBLIC bool operator <=( const Fraction& rVal1, const Fraction& rVal2 );
+TOOLS_DLLPUBLIC bool operator >=( const Fraction& rVal1, const Fraction& rVal2 );
#endif