クラス sc_dt::scfx_mant_ref

#include <scfx_mant.h>

すべてのメンバ一覧

Public メソッド

 scfx_mant_ref ()
 scfx_mant_ref (const scfx_mant &)
 scfx_mant_ref (scfx_mant *)
scfx_mant_refoperator= (const scfx_mant &)
scfx_mant_refoperator= (scfx_mant *)
 ~scfx_mant_ref ()
 operator scfx_mant & ()
word operator[] (int)

Private メソッド

void remove_it ()
 scfx_mant_ref (const scfx_mant_ref &)
scfx_mant_refoperator= (const scfx_mant_ref &)
void * operator new (std::size_t sz)

Private 変数

scfx_mantm_mant
bool m_not_const


説明

scfx_mant.h374 行で定義されています。


コンストラクタとデストラクタ

sc_dt::scfx_mant_ref::scfx_mant_ref (  )  [inline]

scfx_mant.h420 行で定義されています。

00421 : m_mant( 0 ), m_not_const( false )
00422 {}

sc_dt::scfx_mant_ref::scfx_mant_ref ( const scfx_mant mant  )  [inline]

scfx_mant.h425 行で定義されています。

00426 : m_mant( const_cast<scfx_mant*>( &mant ) ), m_not_const( false )
00427 {}

sc_dt::scfx_mant_ref::scfx_mant_ref ( scfx_mant mant  )  [inline]

scfx_mant.h430 行で定義されています。

00431 : m_mant( mant ), m_not_const( true )
00432 {}

sc_dt::scfx_mant_ref::~scfx_mant_ref (  )  [inline]

scfx_mant.h459 行で定義されています。

00460 {
00461     remove_it();
00462 }

sc_dt::scfx_mant_ref::scfx_mant_ref ( const scfx_mant_ref  )  [private]


関数

scfx_mant_ref & sc_dt::scfx_mant_ref::operator= ( const scfx_mant mant  )  [inline]

scfx_mant.h436 行で定義されています。

00437 {
00438     remove_it();
00439 
00440     m_mant = const_cast<scfx_mant*>( &mant );
00441     m_not_const = false;
00442 
00443     return *this;
00444 }

scfx_mant_ref & sc_dt::scfx_mant_ref::operator= ( scfx_mant mant  )  [inline]

scfx_mant.h448 行で定義されています。

00449 {
00450     remove_it();
00451 
00452     m_mant = mant;
00453     m_not_const = true;
00454 
00455     return *this;
00456 }

sc_dt::scfx_mant_ref::operator scfx_mant & (  )  [inline]

scfx_mant.h465 行で定義されています。

00466 {
00467     // SC_ASSERT_( m_not_const, "not allowed to modify mant" );
00468     return *m_mant;
00469 }

word sc_dt::scfx_mant_ref::operator[] ( int  i  )  [inline]

scfx_mant.h473 行で定義されています。

00474 {
00475     return (*m_mant)[i];
00476 }

void sc_dt::scfx_mant_ref::remove_it (  )  [inline, private]

scfx_mant.h411 行で定義されています。

00412 {
00413     if( m_not_const )
00414     {
00415         delete m_mant;
00416     }
00417 }

scfx_mant_ref& sc_dt::scfx_mant_ref::operator= ( const scfx_mant_ref  )  [private]

void* sc_dt::scfx_mant_ref::operator new ( std::size_t  sz  )  [inline, private]

scfx_mant.h402 行で定義されています。

00402 { return ::operator new( sz ); }


変数

scfx_mant.h377 行で定義されています。

scfx_mant.h378 行で定義されています。


このクラスの説明は次のファイルから生成されました:

SystemCに対してFri Jun 6 20:12:48 2008に生成されました。  doxygen 1.5.6