ARB
Public Types | Public Member Functions | List of all members
AliData Class Referenceabstract
Inheritance diagram for AliData:
Inheritance graph
[legend]

Public Types

enum  memop { COPY_TO, COMPARE_WITH, CHECK_DELETE }
 

Public Member Functions

 AliData (size_t size_)
 
virtual ~AliData ()
 
virtual size_t unitsize () const =0
 
virtual bool has_slice () const =0
 
void clear_error () const
 
void set_error (GB_ERROR error) const
 
virtual int operate_on_mem (void *mem, size_t start, size_t count, memop op) const =0
 
virtual int cmp_data (size_t start, const AliData &other, size_t ostart, size_t count) const =0
 
void copyPartTo (void *mem, size_t start, size_t count) const
 
int cmpPartWith (const void *mem, size_t start, size_t count) const
 
GB_ERROR check_delete_allowed (size_t start, size_t count) const
 
virtual UnitPtr unit_left_of (size_t pos) const =0
 
virtual UnitPtr unit_right_of (size_t pos) const =0
 
virtual AliDataPtr create_gap (size_t gapsize, const UnitPair &gapinfo) const =0
 
virtual AliDataPtr slice_down (size_t start, size_t count) const =0
 
size_t elems () const
 
size_t memsize () const
 
void copyTo (void *mem) const
 
bool empty () const
 
int cmp_whole_data (const AliData &other) const
 
bool equals (const AliData &other) const
 
bool differs_from (const AliData &other) const
 
bool is_valid_pos (size_t pos) const
 
bool is_valid_between (size_t pos) const
 
bool is_valid_part (size_t start, size_t count) const
 

Detailed Description

Definition at line 65 of file insdel.cxx.

Member Enumeration Documentation

Enumerator
COPY_TO 
COMPARE_WITH 
CHECK_DELETE 

Definition at line 76 of file insdel.cxx.

Constructor & Destructor Documentation

AliData::AliData ( size_t  size_)
inline

Definition at line 70 of file insdel.cxx.

virtual AliData::~AliData ( )
inlinevirtual

Definition at line 71 of file insdel.cxx.

Member Function Documentation

virtual size_t AliData::unitsize ( ) const
pure virtual
virtual bool AliData::has_slice ( ) const
pure virtual
void AliData::clear_error ( ) const
inline

Definition at line 82 of file insdel.cxx.

References NULp.

void AliData::set_error ( GB_ERROR  error) const
inline

Definition at line 83 of file insdel.cxx.

References error(), and id_assert.

virtual int AliData::operate_on_mem ( void *  mem,
size_t  start,
size_t  count,
memop  op 
) const
pure virtual
virtual int AliData::cmp_data ( size_t  start,
const AliData other,
size_t  ostart,
size_t  count 
) const
pure virtual
void AliData::copyPartTo ( void *  mem,
size_t  start,
size_t  count 
) const
inline

Definition at line 92 of file insdel.cxx.

int AliData::cmpPartWith ( const void *  mem,
size_t  start,
size_t  count 
) const
inline

Definition at line 93 of file insdel.cxx.

References id_assert.

GB_ERROR AliData::check_delete_allowed ( size_t  start,
size_t  count 
) const
inline

Definition at line 97 of file insdel.cxx.

References id_assert, IF_ASSERTION_USED, min, and NULp.

virtual UnitPtr AliData::unit_left_of ( size_t  pos) const
pure virtual
virtual UnitPtr AliData::unit_right_of ( size_t  pos) const
pure virtual
virtual AliDataPtr AliData::create_gap ( size_t  gapsize,
const UnitPair gapinfo 
) const
pure virtual
virtual AliDataPtr AliData::slice_down ( size_t  start,
size_t  count 
) const
pure virtual
size_t AliData::elems ( ) const
inline

Definition at line 111 of file insdel.cxx.

Referenced by EditedTerminal::apply(), cmp_whole_data(), equals(), and AliDataSlice::make().

size_t AliData::memsize ( ) const
inline

Definition at line 112 of file insdel.cxx.

Referenced by alidata2buffer().

void AliData::copyTo ( void *  mem) const
inline

Definition at line 113 of file insdel.cxx.

Referenced by alidata2buffer().

bool AliData::empty ( ) const
inline

Definition at line 114 of file insdel.cxx.

int AliData::cmp_whole_data ( const AliData other) const
inline

Definition at line 116 of file insdel.cxx.

References cmp, compare_type(), elems(), and min.

bool AliData::equals ( const AliData other) const
inline

Definition at line 124 of file insdel.cxx.

References elems().

bool AliData::differs_from ( const AliData other) const
inline

Definition at line 130 of file insdel.cxx.

References arb_test::equals().

Referenced by EditedTerminal::apply().

bool AliData::is_valid_pos ( size_t  pos) const
inline

Definition at line 132 of file insdel.cxx.

bool AliData::is_valid_between ( size_t  pos) const
inline

Definition at line 133 of file insdel.cxx.

bool AliData::is_valid_part ( size_t  start,
size_t  count 
) const
inline

Definition at line 135 of file insdel.cxx.


The documentation for this class was generated from the following file: