Skip to content

Commit fe8ca2a

Browse files
committed
Inline asset and price comparison operators
1 parent 45db0c7 commit fe8ca2a

File tree

2 files changed

+12
-32
lines changed

2 files changed

+12
-32
lines changed

libraries/chain/include/graphene/chain/protocol/asset.hpp

+12-12
Original file line numberDiff line numberDiff line change
@@ -62,20 +62,20 @@ namespace graphene { namespace chain {
6262
FC_ASSERT( a.asset_id == b.asset_id );
6363
return a.amount < b.amount;
6464
}
65-
friend bool operator <= ( const asset& a, const asset& b )
65+
friend inline bool operator <= ( const asset& a, const asset& b )
6666
{
67-
return (a == b) || (a < b);
67+
return !(b < a);
6868
}
6969

70-
friend bool operator != ( const asset& a, const asset& b )
70+
friend inline bool operator != ( const asset& a, const asset& b )
7171
{
7272
return !(a == b);
7373
}
74-
friend bool operator > ( const asset& a, const asset& b )
74+
friend inline bool operator > ( const asset& a, const asset& b )
7575
{
76-
return !(a <= b);
76+
return (b < a);
7777
}
78-
friend bool operator >= ( const asset& a, const asset& b )
78+
friend inline bool operator >= ( const asset& a, const asset& b )
7979
{
8080
return !(a < b);
8181
}
@@ -140,14 +140,14 @@ namespace graphene { namespace chain {
140140
price operator / ( const asset& base, const asset& quote );
141141
inline price operator~( const price& p ) { return price{p.quote,p.base}; }
142142

143-
bool operator < ( const asset& a, const asset& b );
144-
bool operator <= ( const asset& a, const asset& b );
145143
bool operator < ( const price& a, const price& b );
146-
bool operator <= ( const price& a, const price& b );
147-
bool operator > ( const price& a, const price& b );
148-
bool operator >= ( const price& a, const price& b );
149144
bool operator == ( const price& a, const price& b );
150-
bool operator != ( const price& a, const price& b );
145+
146+
inline bool operator > ( const price& a, const price& b ) { return (b < a); }
147+
inline bool operator <= ( const price& a, const price& b ) { return !(b < a); }
148+
inline bool operator >= ( const price& a, const price& b ) { return !(a < b); }
149+
inline bool operator != ( const price& a, const price& b ) { return !(a == b); }
150+
151151
asset operator * ( const asset& a, const price& b ); ///< Multiply and round down
152152

153153
price operator * ( const price& p, const ratio_type& r );

libraries/chain/protocol/asset.cpp

-20
Original file line numberDiff line numberDiff line change
@@ -53,26 +53,6 @@ namespace graphene { namespace chain {
5353
return amult < bmult;
5454
}
5555

56-
bool operator <= ( const price& a, const price& b )
57-
{
58-
return !(b < a);
59-
}
60-
61-
bool operator != ( const price& a, const price& b )
62-
{
63-
return !(a == b);
64-
}
65-
66-
bool operator > ( const price& a, const price& b )
67-
{
68-
return (b < a);
69-
}
70-
71-
bool operator >= ( const price& a, const price& b )
72-
{
73-
return !(a < b);
74-
}
75-
7656
asset operator * ( const asset& a, const price& b )
7757
{
7858
if( a.asset_id == b.base.asset_id )

0 commit comments

Comments
 (0)