Pol  Rev 533
BDictionary Class Reference

#include <dict.h>

+ Inheritance diagram for BDictionary:
+ Collaboration diagram for BDictionary:

List of all members.

Public Types

typedef map< BObject, BObjectRefContents

Public Member Functions

 BDictionary ()
void addMember (const char *name, BObjectRef val)
void addMember (const char *name, BObjectImp *imp)
void addMember (BObjectImp *key, BObjectImp *val)
const Contentscontents () const
size_t mapcount () const

Static Public Member Functions

static BObjectImpunpack (std::istream &is)

Protected Member Functions

 BDictionary (std::istream &is, unsigned size, BObjectType type=OTDictionary)
 BDictionary (const BDictionary &, BObjectType type=OTDictionary)
 BDictionary (BObjectType type)
virtual BObjectImparray_assign (BObjectImp *idx, BObjectImp *target)
virtual BObjectImpcall_method (const char *methodname, Executor &ex)
virtual BObjectImpcall_method_id (const int id, Executor &ex, bool forcebuiltin=false)
virtual BObjectImpcopy () const
virtual ContIteratorcreateIterator (BObject *pIterVal)
virtual void FormatForStringRep (std::ostream &os, const BObject &bkeyobj, const BObjectRef &bvalref) const
virtual BObjectRef get_member (const char *membername)
virtual std::string getStringRep () const
virtual BObjectRef operDotPlus (const char *name)
virtual BObjectRef OperSubscript (const BObject &obj)
virtual void packonto (std::ostream &os) const
virtual char packtype () const
virtual BObjectRef set_member (const char *membername, BObjectImp *value)
virtual size_t sizeEstimate () const
virtual const char * typeOf () const
virtual int typeOfInt () const
virtual const char * typetag () const

Private Member Functions

BDictionaryoperator= (const BDictionary &)

Private Attributes

Contents contents_

Friends

class BDictionaryIterator

Detailed Description

Definition at line 22 of file dict.h.


Member Typedef Documentation

Definition at line 34 of file dict.h.


Constructor & Destructor Documentation

Definition at line 26 of file dict.cpp.

Referenced by copy(), sizeEstimate(), and unpack().

+ Here is the caller graph for this function:

BDictionary::BDictionary ( std::istream &  is,
unsigned  size,
BObjectType  type = OTDictionary 
) [protected]

Definition at line 46 of file dict.cpp.

References contents_, and unpack().

+ Here is the call graph for this function:

BDictionary::BDictionary ( const BDictionary dict,
BObjectType  type = OTDictionary 
) [protected]

Definition at line 34 of file dict.cpp.

References contents_.

BDictionary::BDictionary ( BObjectType  type) [explicit, protected]

Definition at line 30 of file dict.cpp.


Member Function Documentation

void BDictionary::addMember ( const char *  name,
BObjectImp imp 
)

Definition at line 237 of file dict.cpp.

References contents_.

void BDictionary::addMember ( BObjectImp key,
BObjectImp val 
)

Definition at line 243 of file dict.cpp.

References contents_.

BObjectImp * BDictionary::array_assign ( BObjectImp idx,
BObjectImp target 
) [protected, virtual]

Reimplemented from BObjectImp.

Definition at line 207 of file dict.cpp.

References contents_, BObjectImp::copy(), BObjectImp::isa(), BObjectImp::OTApplicObj, BObjectImp::OTDouble, BObjectImp::OTLong, and BObjectImp::OTString.

+ Here is the call graph for this function:

BObjectImp * BDictionary::call_method ( const char *  methodname,
Executor ex 
) [protected, virtual]

Reimplemented from BObjectImp.

Definition at line 326 of file dict.cpp.

References call_method_id(), getKnownObjMethod(), and ObjMethod::id.

+ Here is the call graph for this function:

BObjectImp * BDictionary::call_method_id ( const int  id,
Executor ex,
bool  forcebuiltin = false 
) [protected, virtual]

Definition at line 438 of file dict.cpp.

References contents_.

Referenced by CreateItemDescriptor(), PolSystemExecutorModule::mf_ListTextCommands(), and replace_properties().

+ Here is the caller graph for this function:

BObjectImp * BDictionary::copy ( void  ) const [protected, virtual]

Implements BObjectImp.

Definition at line 129 of file dict.cpp.

References BDictionary().

+ Here is the call graph for this function:

ContIterator * BDictionary::createIterator ( BObject pIterVal) [protected, virtual]

Reimplemented from BObjectImp.

Definition at line 124 of file dict.cpp.

References BDictionaryIterator.

void BDictionary::FormatForStringRep ( std::ostream &  os,
const BObject bkeyobj,
const BObjectRef bvalref 
) const [protected, virtual]

Definition at line 413 of file dict.cpp.

References BObjectImp::getFormattedStringRep(), and BObject::impref().

Referenced by getStringRep().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

BObjectRef BDictionary::get_member ( const char *  membername) [protected, virtual]

Reimplemented from BObjectImp.

Definition at line 170 of file dict.cpp.

References contents_, and UninitObject::create().

+ Here is the call graph for this function:

string BDictionary::getStringRep ( ) const [protected, virtual]

Implements BObjectImp.

Definition at line 388 of file dict.cpp.

References contents_, FormatForStringRep(), OSTRINGSTREAM, OSTRINGSTREAM_STR, and typetag().

+ Here is the call graph for this function:

size_t BDictionary::mapcount ( ) const

Definition at line 146 of file dict.cpp.

References contents_.

BDictionary& BDictionary::operator= ( const BDictionary ) [private]
BObjectRef BDictionary::operDotPlus ( const char *  name) [protected, virtual]

Reimplemented from BObjectImp.

Definition at line 423 of file dict.cpp.

References contents_.

BObjectRef BDictionary::OperSubscript ( const BObject obj) [protected, virtual]

Reimplemented from BObjectImp.

Definition at line 186 of file dict.cpp.

References contents_, UninitObject::create(), BObjectImp::isa(), BObjectImp::OTApplicObj, BObjectImp::OTDouble, BObjectImp::OTLong, and BObjectImp::OTString.

+ Here is the call graph for this function:

void BDictionary::packonto ( std::ostream &  os) const [protected, virtual]

Reimplemented from BObjectImp.

Definition at line 354 of file dict.cpp.

References contents_, BObject::impref(), BObjectImp::packonto(), and packtype().

+ Here is the call graph for this function:

char BDictionary::packtype ( ) const [protected, virtual]

Definition at line 335 of file dict.cpp.

Referenced by packonto().

+ Here is the caller graph for this function:

BObjectRef BDictionary::set_member ( const char *  membername,
BObjectImp value 
) [protected, virtual]

Reimplemented from BObjectImp.

Definition at line 151 of file dict.cpp.

References contents_.

size_t BDictionary::sizeEstimate ( ) const [protected, virtual]

Implements BObjectImp.

Definition at line 134 of file dict.cpp.

References BDictionary(), contents_, BObject::sizeEstimate(), and BObjectRef::sizeEstimate().

+ Here is the call graph for this function:

const char * BDictionary::typeOf ( ) const [protected, virtual]

Reimplemented from BObjectImp.

Definition at line 345 of file dict.cpp.

int BDictionary::typeOfInt ( ) const [protected, virtual]

Reimplemented from BObjectImp.

Definition at line 349 of file dict.cpp.

References BObjectImp::OTDictionary.

const char * BDictionary::typetag ( ) const [protected, virtual]

Definition at line 340 of file dict.cpp.

Referenced by getStringRep().

+ Here is the caller graph for this function:

BObjectImp * BDictionary::unpack ( std::istream &  is) [static]

Reimplemented from BObjectImp.

Definition at line 369 of file dict.cpp.

References BDictionary().

Referenced by BDictionary().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:


Friends And Related Function Documentation

friend class BDictionaryIterator [friend]

Definition at line 62 of file dict.h.

Referenced by createIterator().


Member Data Documentation


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