SPUC  3.0
Classes | Namespaces | Macros | Functions
builtin.h File Reference

Wrapper around built-in types to allow custom manipulations. More...

#include <spuc/spuc_types.h>
#include <iostream>
#include <spuc/spuc_defines.h>
Include dependency graph for builtin.h:
This graph shows which files directly or indirectly include this file:

Classes

singleton  SPUC::builtin< T >
 Wrapper around built-in types to allow custom manipulations. More...
 

Namespaces

 SPUC
 fixed point types: spuc_fixed,spuc_ufixed,spuc_int,spuc_uint
 

Macros

#define BUILTIN_OPS(T1, T2, RESULT)
 

Functions

template<class T >
builtin< T > SPUC::operator+ (const builtin< T > &bi)
 
template<class T >
builtin< T > SPUC::operator- (const builtin< T > &bi)
 
template<class T >
builtin< T > SPUC::operator~ (const builtin< T > &bi)
 
template<class T >
builtin< T > SPUC::operator! (const builtin< T > &bi)
 
template<class T >
std::istream & SPUC::operator>> (std::istream &s, builtin< T > &bi)
 
template<class T >
std::ostream & SPUC::operator<< (std::ostream &s, const builtin< T > &bi)
 
template<class T >
builtin< T > SPUC::operator>> (const builtin< T > &bi, int i)
 
template<class T >
builtin< T > SPUC::operator<< (const builtin< T > &bi, int i)
 
template<class T >
builtin< T > SPUC::operator>> (const builtin< T > &bi, long i)
 
template<class T >
builtin< T > SPUC::operator<< (const builtin< T > &bi, long i)
 
template<class T >
bool SPUC::operator== (const builtin< T > &bi1, const builtin< T > &bi2)
 
template<class T >
bool SPUC::operator!= (const builtin< T > &bi1, const builtin< T > &bi2)
 
template<class T >
bool SPUC::operator< (const builtin< T > &bi1, const builtin< T > &bi2)
 
template<class T >
bool SPUC::operator<= (const builtin< T > &bi1, const builtin< T > &bi2)
 
template<class T >
bool SPUC::operator> (const builtin< T > &bi1, const builtin< T > &bi2)
 
template<class T >
bool SPUC::operator>= (const builtin< T > &bi1, const builtin< T > &bi2)
 
template<class T >
builtin< T > SPUC::operator+ (const builtin< T > &bi1, const builtin< T > &bi2)
 
template<class T >
builtin< T > SPUC::operator- (const builtin< T > &bi1, const builtin< T > &bi2)
 
template<class T >
builtin< T > SPUC::operator* (const builtin< T > &bi1, const builtin< T > &bi2)
 
template<class T >
builtin< T > SPUC::operator/ (const builtin< T > &bi1, const builtin< T > &bi2)
 
template<>
builtin< double > SPUC::operator<< (const builtin< double > &bi, int i)
 
template<>
builtin< double > SPUC::operator>> (const builtin< double > &bi, int i)
 
template<>
builtin< double > SPUC::operator<< (const builtin< double > &bi, long i)
 
template<>
builtin< double > SPUC::operator>> (const builtin< double > &bi, long i)
 
template<>
builtin< float > SPUC::operator<< (const builtin< float > &bi, int i)
 
template<>
builtin< float > SPUC::operator>> (const builtin< float > &bi, int i)
 
template<>
builtin< float > SPUC::operator<< (const builtin< float > &bi, long i)
 
template<>
builtin< float > SPUC::operator>> (const builtin< float > &bi, long i)
 

Detailed Description

Wrapper around built-in types to allow custom manipulations.

Macro Definition Documentation

#define BUILTIN_OPS (   T1,
  T2,
  RESULT 
)
Value:
RESULT inline operator *(T1 r, T2 l) { return((RESULT)r*(RESULT)l); } \
RESULT inline operator *(T2 r, T1 l) { return((RESULT)l*(RESULT)r); } \
RESULT inline operator +(T1 r, T2 l) { return((RESULT)r+(RESULT)l); } \
RESULT inline operator +(T2 r, T1 l) { return((RESULT)l+(RESULT)r); } \
RESULT inline operator -(T1 r, T2 l) { return((RESULT)r-(RESULT)l); } \
RESULT inline operator -(T2 r, T1 l) { return((RESULT)l-(RESULT)r); }
builtin< T > operator-(const builtin< T > &bi1, const builtin< T > &bi2)
Definition: builtin.h:271
builtin< T > operator*(const builtin< T > &bi1, const builtin< T > &bi2)
Definition: builtin.h:275
builtin< T > operator+(const builtin< T > &bi1, const builtin< T > &bi2)
Definition: builtin.h:267