|
Pol
Revision:cb584c9
|
#include <bstruct.h>
Inheritance diagram for Pol::Bscript::BStruct:Public Types | |
| typedef std::map< std::string, BObjectRef, Clib::ci_cmp_pred > | Contents |
Public Types inherited from Pol::Bscript::BObjectImp | |
| enum | BObjectType : u8 { OTUnknown = 0, OTUninit = 1, OTString = 2, OTLong = 3, OTDouble = 4, OTArray = 5, OTApplicPtr = 6, OTApplicObj = 7, OTError = 8, OTDictionary = 9, OTStruct = 10, OTPacket = 11, OTBinaryFile = 12, OTXMLFile = 13, OTXMLNode = 14, OTXMLAttributes = 15, OTPolCoreRef = 16, OTAccountRef = 17, OTConfigFileRef = 18, OTConfigElemRef = 19, OTDataFileRef = 20, OTDataElemRef = 21, OTGuildRef = 22, OTPartyRef = 23, OTBoundingBox = 24, OTDebugContext = 25, OTScriptExRef = 26, OTPackage = 27, OTMenuRef = 28, OTMobileRef = 29, OTOfflineMobileRef = 30, OTItemRef = 31, OTBoatRef = 32, OTMultiRef = 33, OTClientRef = 34, OTSQLConnection = 35, OTSQLResultSet = 36, OTSQLRow = 37, OTBoolean = 38, OTFuncRef = 39 } |
Public Member Functions | |
| BStruct () | |
| BStruct (std::istream &is, unsigned size, BObjectType type) | |
| void | addMember (const char *name, BObjectRef val) |
| void | addMember (const char *name, BObjectImp *imp) |
| const Contents & | contents () const |
| const BObjectImp * | FindMember (const char *name) |
| size_t | mapcount () const |
Public Member Functions inherited from Pol::Bscript::BObjectImp | |
| BObjectImp (BObjectType type) | |
| virtual | ~BObjectImp () |
| virtual BObjectImp * | bitnot () const |
| virtual long | contains (const BObjectImp &objimp) const |
| virtual BObjectRef | get_member_id (const int id) |
| virtual std::string | getFormattedStringRep () const |
| unsigned int | instance () const |
| virtual BObjectImp * | inverse () const |
| bool | isa (BObjectType type) const |
| virtual bool | isTrue () const |
| virtual char | member (const BObject &obj) const |
| virtual bool | operator!= (const BObjectImp &objimp) const |
| virtual BObject | operator- () const |
| virtual bool | operator< (const BObjectImp &objimp) const |
| virtual bool | operator<= (const BObjectImp &objimp) const |
| virtual bool | operator== (const BObjectImp &objimp) const |
| virtual bool | operator> (const BObjectImp &objimp) const |
| virtual bool | operator>= (const BObjectImp &objimp) const |
| virtual void | operDivideEqual (BObject &obj, BObjectImp &objimp) |
| virtual void | operInsertInto (BObject &obj, const BObjectImp &objimp) |
| virtual void | operMinusEqual (BObject &obj, BObjectImp &objimp) |
| virtual void | operModulusEqual (BObject &obj, BObjectImp &objimp) |
| virtual BObjectRef | OperMultiSubscript (std::stack< BObjectRef > &indices) |
| virtual BObjectRef | OperMultiSubscriptAssign (std::stack< BObjectRef > &indices, BObjectImp *target) |
| virtual void | operPlusEqual (BObject &obj, BObjectImp &objimp) |
| virtual void | operTimesEqual (BObject &obj, BObjectImp &objimp) |
| virtual std::string | pack () const |
| virtual void | printOn (std::ostream &) const |
| virtual BObjectImp * | selfBitAndObj (const BObjectImp &objimp) const |
| virtual BObjectImp * | selfBitAndObj (const BLong &objimp) const |
| virtual BObjectImp * | selfBitAndObj (const Double &objimp) const |
| virtual BObjectImp * | selfBitAndObj (const String &objimp) const |
| virtual BObjectImp * | selfBitAndObj (const ObjArray &objimp) const |
| virtual void | selfBitAndObj (BObjectImp &objimp, BObject &obj) |
| virtual void | selfBitAndObj (BLong &objimp, BObject &obj) |
| virtual void | selfBitAndObj (Double &objimp, BObject &obj) |
| virtual void | selfBitAndObj (String &objimp, BObject &obj) |
| virtual void | selfBitAndObj (ObjArray &objimp, BObject &obj) |
| virtual BObjectImp * | selfBitAndObjImp (const BObjectImp &objimp) const |
| virtual void | selfBitAndObjImp (BObjectImp &objimp, BObject &obj) |
| virtual BObjectImp * | selfBitOrObj (const BObjectImp &objimp) const |
| virtual BObjectImp * | selfBitOrObj (const BLong &objimp) const |
| virtual BObjectImp * | selfBitOrObj (const Double &objimp) const |
| virtual BObjectImp * | selfBitOrObj (const String &objimp) const |
| virtual BObjectImp * | selfBitOrObj (const ObjArray &objimp) const |
| virtual void | selfBitOrObj (BObjectImp &objimp, BObject &obj) |
| virtual void | selfBitOrObj (BLong &objimp, BObject &obj) |
| virtual void | selfBitOrObj (Double &objimp, BObject &obj) |
| virtual void | selfBitOrObj (String &objimp, BObject &obj) |
| virtual void | selfBitOrObj (ObjArray &objimp, BObject &obj) |
| virtual BObjectImp * | selfBitOrObjImp (const BObjectImp &objimp) const |
| virtual void | selfBitOrObjImp (BObjectImp &objimp, BObject &obj) |
| virtual BObjectImp * | selfBitShiftLeftObj (const BObjectImp &objimp) const |
| virtual BObjectImp * | selfBitShiftLeftObj (const BLong &objimp) const |
| virtual BObjectImp * | selfBitShiftLeftObj (const Double &objimp) const |
| virtual BObjectImp * | selfBitShiftLeftObj (const String &objimp) const |
| virtual BObjectImp * | selfBitShiftLeftObj (const ObjArray &objimp) const |
| virtual void | selfBitShiftLeftObj (BObjectImp &objimp, BObject &obj) |
| virtual void | selfBitShiftLeftObj (BLong &objimp, BObject &obj) |
| virtual void | selfBitShiftLeftObj (Double &objimp, BObject &obj) |
| virtual void | selfBitShiftLeftObj (String &objimp, BObject &obj) |
| virtual void | selfBitShiftLeftObj (ObjArray &objimp, BObject &obj) |
| virtual BObjectImp * | selfBitShiftLeftObjImp (const BObjectImp &objimp) const |
| virtual void | selfBitShiftLeftObjImp (BObjectImp &objimp, BObject &obj) |
| virtual BObjectImp * | selfBitShiftRightObj (const BObjectImp &objimp) const |
| virtual BObjectImp * | selfBitShiftRightObj (const BLong &objimp) const |
| virtual BObjectImp * | selfBitShiftRightObj (const Double &objimp) const |
| virtual BObjectImp * | selfBitShiftRightObj (const String &objimp) const |
| virtual BObjectImp * | selfBitShiftRightObj (const ObjArray &objimp) const |
| virtual void | selfBitShiftRightObj (BObjectImp &objimp, BObject &obj) |
| virtual void | selfBitShiftRightObj (BLong &objimp, BObject &obj) |
| virtual void | selfBitShiftRightObj (Double &objimp, BObject &obj) |
| virtual void | selfBitShiftRightObj (String &objimp, BObject &obj) |
| virtual void | selfBitShiftRightObj (ObjArray &objimp, BObject &obj) |
| virtual BObjectImp * | selfBitShiftRightObjImp (const BObjectImp &objimp) const |
| virtual void | selfBitShiftRightObjImp (BObjectImp &objimp, BObject &obj) |
| virtual BObjectImp * | selfBitXorObj (const BObjectImp &objimp) const |
| virtual BObjectImp * | selfBitXorObj (const BLong &objimp) const |
| virtual BObjectImp * | selfBitXorObj (const Double &objimp) const |
| virtual BObjectImp * | selfBitXorObj (const String &objimp) const |
| virtual BObjectImp * | selfBitXorObj (const ObjArray &objimp) const |
| virtual void | selfBitXorObj (BObjectImp &objimp, BObject &obj) |
| virtual void | selfBitXorObj (BLong &objimp, BObject &obj) |
| virtual void | selfBitXorObj (Double &objimp, BObject &obj) |
| virtual void | selfBitXorObj (String &objimp, BObject &obj) |
| virtual void | selfBitXorObj (ObjArray &objimp, BObject &obj) |
| virtual BObjectImp * | selfBitXorObjImp (const BObjectImp &objimp) const |
| virtual void | selfBitXorObjImp (BObjectImp &objimp, BObject &obj) |
| virtual BObjectImp * | selfDividedByObj (const BObjectImp &objimp) const |
| virtual BObjectImp * | selfDividedByObj (const BLong &objimp) const |
| virtual BObjectImp * | selfDividedByObj (const Double &objimp) const |
| virtual BObjectImp * | selfDividedByObj (const String &objimp) const |
| virtual BObjectImp * | selfDividedByObj (const ObjArray &objimp) const |
| virtual void | selfDividedByObj (BObjectImp &objimp, BObject &obj) |
| virtual void | selfDividedByObj (BLong &objimp, BObject &obj) |
| virtual void | selfDividedByObj (Double &objimp, BObject &obj) |
| virtual void | selfDividedByObj (String &objimp, BObject &obj) |
| virtual void | selfDividedByObj (ObjArray &objimp, BObject &obj) |
| virtual BObjectImp * | selfDividedByObjImp (const BObjectImp &objimp) const |
| virtual void | selfDividedByObjImp (BObjectImp &objimp, BObject &obj) |
| virtual BObjectImp * | selfMinusObj (const BObjectImp &objimp) const |
| virtual BObjectImp * | selfMinusObj (const BLong &objimp) const |
| virtual BObjectImp * | selfMinusObj (const Double &objimp) const |
| virtual BObjectImp * | selfMinusObj (const String &objimp) const |
| virtual BObjectImp * | selfMinusObj (const ObjArray &objimp) const |
| virtual void | selfMinusObj (BObjectImp &objimp, BObject &obj) |
| virtual void | selfMinusObj (BLong &objimp, BObject &obj) |
| virtual void | selfMinusObj (Double &objimp, BObject &obj) |
| virtual void | selfMinusObj (String &objimp, BObject &obj) |
| virtual void | selfMinusObj (ObjArray &objimp, BObject &obj) |
| virtual BObjectImp * | selfMinusObjImp (const BObjectImp &objimp) const |
| virtual void | selfMinusObjImp (BObjectImp &objimp, BObject &obj) |
| virtual BObjectImp * | selfModulusObj (const BObjectImp &objimp) const |
| virtual BObjectImp * | selfModulusObj (const BLong &objimp) const |
| virtual BObjectImp * | selfModulusObj (const Double &objimp) const |
| virtual BObjectImp * | selfModulusObj (const String &objimp) const |
| virtual BObjectImp * | selfModulusObj (const ObjArray &objimp) const |
| virtual void | selfModulusObj (BObjectImp &objimp, BObject &obj) |
| virtual void | selfModulusObj (BLong &objimp, BObject &obj) |
| virtual void | selfModulusObj (Double &objimp, BObject &obj) |
| virtual void | selfModulusObj (String &objimp, BObject &obj) |
| virtual void | selfModulusObj (ObjArray &objimp, BObject &obj) |
| virtual BObjectImp * | selfModulusObjImp (const BObjectImp &objimp) const |
| virtual void | selfModulusObjImp (BObjectImp &objimp, BObject &obj) |
| virtual BObjectImp * | selfPlusObj (const BObjectImp &objimp) const |
| virtual BObjectImp * | selfPlusObj (const BLong &objimp) const |
| virtual BObjectImp * | selfPlusObj (const Double &objimp) const |
| virtual BObjectImp * | selfPlusObj (const String &objimp) const |
| virtual BObjectImp * | selfPlusObj (const ObjArray &objimp) const |
| virtual void | selfPlusObj (BObjectImp &objimp, BObject &obj) |
| virtual void | selfPlusObj (BLong &objimp, BObject &obj) |
| virtual void | selfPlusObj (Double &objimp, BObject &obj) |
| virtual void | selfPlusObj (String &objimp, BObject &obj) |
| virtual void | selfPlusObj (ObjArray &objimp, BObject &obj) |
| virtual BObjectImp * | selfPlusObjImp (const BObjectImp &objimp) const |
| virtual void | selfPlusObjImp (BObjectImp &objimp, BObject &obj) |
| virtual BObjectImp * | selfTimesObj (const BObjectImp &objimp) const |
| virtual BObjectImp * | selfTimesObj (const BLong &objimp) const |
| virtual BObjectImp * | selfTimesObj (const Double &objimp) const |
| virtual BObjectImp * | selfTimesObj (const String &objimp) const |
| virtual BObjectImp * | selfTimesObj (const ObjArray &objimp) const |
| virtual void | selfTimesObj (BObjectImp &objimp, BObject &obj) |
| virtual void | selfTimesObj (BLong &objimp, BObject &obj) |
| virtual void | selfTimesObj (Double &objimp, BObject &obj) |
| virtual void | selfTimesObj (String &objimp, BObject &obj) |
| virtual void | selfTimesObj (ObjArray &objimp, BObject &obj) |
| virtual BObjectImp * | selfTimesObjImp (const BObjectImp &objimp) const |
| virtual void | selfTimesObjImp (BObjectImp &objimp, BObject &obj) |
| virtual BObjectRef | set_member_id (const int id, BObjectImp *valueimp, bool copy) |
| virtual char | str_member (const std::string &membername) const |
| BObjectType | type () const |
Public Member Functions inherited from ref_counted | |
| unsigned int | add_ref () |
| unsigned int | count () const |
| unsigned int | release () |
Static Public Member Functions | |
| static BObjectImp * | unpack (std::istream &is) |
Static Public Member Functions inherited from Pol::Bscript::BObjectImp | |
| static const char * | typestr (BObjectType typ) |
| static BObjectImp * | unpack (const char *pstr) |
| static BObjectImp * | unpack (std::istream &is) |
Protected Member Functions | |
| BStruct (const BStruct &other, BObjectType type) | |
| BStruct (BObjectType type) | |
| virtual BObjectImp * | array_assign (BObjectImp *idx, BObjectImp *target, bool copy) POL_OVERRIDE |
| virtual BObjectImp * | call_method (const char *methodname, Executor &ex) POL_OVERRIDE |
| virtual BObjectImp * | call_method_id (const int id, Executor &ex, bool forcebuiltin=false) POL_OVERRIDE |
| virtual BObjectImp * | copy () const POL_OVERRIDE |
| virtual ContIterator * | createIterator (BObject *pIterVal) POL_OVERRIDE |
| virtual void | FormatForStringRep (std::ostream &os, const std::string &key, const BObjectRef &bvalref) const |
| virtual BObjectRef | get_member (const char *membername) POL_OVERRIDE |
| virtual std::string | getStringRep () const POL_OVERRIDE |
| virtual BObjectRef | operDotMinus (const char *name) POL_OVERRIDE |
| virtual BObjectRef | operDotPlus (const char *name) POL_OVERRIDE |
| virtual BObjectRef | operDotQMark (const char *name) POL_OVERRIDE |
| virtual BObjectRef | OperSubscript (const BObject &obj) POL_OVERRIDE |
| virtual void | packonto (std::ostream &os) const POL_OVERRIDE |
| virtual char | packtype () const |
| virtual BObjectRef | set_member (const char *membername, BObjectImp *value, bool copy) POL_OVERRIDE |
| virtual size_t | sizeEstimate () const POL_OVERRIDE |
| virtual const char * | typeOf () const POL_OVERRIDE |
| virtual u8 | typeOfInt () const POL_OVERRIDE |
| virtual const char * | typetag () const |
Protected Member Functions inherited from ref_counted | |
| ref_counted () | |
| ~ref_counted ()=default | |
Private Member Functions | |
| BStruct & | operator= (const BStruct &) |
Private Attributes | |
| Contents | contents_ |
Friends | |
| class | BStructIterator |
Additional Inherited Members | |
Protected Attributes inherited from ref_counted | |
| std::atomic< unsigned int > | _count |
| typedef std::map<std::string, BObjectRef, Clib::ci_cmp_pred> Pol::Bscript::BStruct::Contents |
| Pol::Bscript::BStruct::BStruct | ( | ) |
Definition at line 28 of file bstruct.cpp.
| Pol::Bscript::BStruct::BStruct | ( | std::istream & | is, |
| unsigned | size, | ||
| BObjectType | type | ||
| ) |
Definition at line 43 of file bstruct.cpp.
References contents_, Pol::Bscript::BObjectImp::isa(), Pol::Bscript::BObjectImp::OTString, Pol::Bscript::BObjectImp::unpack(), and Pol::Bscript::String::value().
|
explicitprotected |
Definition at line 32 of file bstruct.cpp.
References contents_.
|
explicitprotected |
Definition at line 30 of file bstruct.cpp.
| void Pol::Bscript::BStruct::addMember | ( | const char * | name, |
| BObjectRef | val | ||
| ) |
Definition at line 305 of file bstruct.cpp.
References Pol::Bscript::BStructIterator::key.
Referenced by Pol::Bscript::BError::BError(), Pol::Module::handle_coord_cursor(), Pol::Module::ItemGivenEvent::ItemGivenEvent(), Pol::Module::menu_selection_made(), Pol::Module::UOExecutorModule::mf_FindPath(), Pol::Module::UOExecutorModule::mf_GetCoordsInLine(), Pol::Module::UOExecutorModule::mf_SaveWorldState(), Pol::Items::ArmorDesc::PopulateStruct(), Pol::Items::WeaponDesc::PopulateStruct(), Pol::Items::ItemDesc::PopulateStruct(), Pol::Items::ContainerDesc::PopulateStruct(), Pol::Items::DoorDesc::PopulateStruct(), Pol::Items::SpellbookDesc::PopulateStruct(), Pol::Items::SpellScrollDesc::PopulateStruct(), and Pol::Items::MapDesc::PopulateStruct().
| void Pol::Bscript::BStruct::addMember | ( | const char * | name, |
| BObjectImp * | imp | ||
| ) |
Definition at line 311 of file bstruct.cpp.
References Pol::Bscript::BStructIterator::key.
|
protectedvirtual |
Reimplemented from Pol::Bscript::BObjectImp.
Reimplemented in Pol::Bscript::BError.
Definition at line 273 of file bstruct.cpp.
References Pol::Bscript::BObjectImp::copy(), Pol::Bscript::String::find(), Pol::Bscript::BObjectImp::isa(), Pol::Bscript::BObjectImp::OTLong, Pol::Bscript::BObjectImp::OTString, and Pol::Bscript::String::value().
|
protectedvirtual |
Reimplemented from Pol::Bscript::BObjectImp.
Definition at line 390 of file bstruct.cpp.
References Pol::Bscript::BObjectImp::call_method_id(), Pol::Bscript::getKnownObjMethod(), and Pol::Bscript::ObjMethod::id.
|
protectedvirtual |
Reimplemented from Pol::Bscript::BObjectImp.
Definition at line 317 of file bstruct.cpp.
References Pol::Bscript::BObjectImp::copy(), ref_counted::count(), Pol::Bscript::Executor::getParamObj(), Pol::Bscript::BObjectImp::isa(), Pol::Bscript::MTH_ERASE, Pol::Bscript::MTH_EXISTS, Pol::Bscript::MTH_INSERT, Pol::Bscript::MTH_KEYS, Pol::Bscript::MTH_SIZE, Pol::Bscript::Executor::numParams(), Pol::Bscript::BObjectImp::OTString, and Pol::Bscript::String::value().
| const BStruct::Contents & Pol::Bscript::BStruct::contents | ( | ) | const |
Definition at line 466 of file bstruct.cpp.
Referenced by Pol::Core::BXMLfile::call_method_id(), Pol::Core::BXmlNode::call_method_id(), Pol::Items::CreateItemDescriptor(), Pol::Module::OSExecutorModule::mf_HTTPRequest(), Pol::Module::recurseE2J(), and Pol::Module::replace_properties().
|
protectedvirtual |
Implements Pol::Bscript::BObjectImp.
Reimplemented in Pol::Bscript::BError.
Definition at line 68 of file bstruct.cpp.
References BStruct(), Pol::Bscript::BObjectImp::isa(), Pol::Bscript::BObjectImp::OTStruct, and passert.
|
protectedvirtual |
Reimplemented from Pol::Bscript::BObjectImp.
Reimplemented in Pol::Bscript::BError.
Definition at line 173 of file bstruct.cpp.
References Pol::Bscript::BStructIterator::BStructIterator().
| const BObjectImp * Pol::Bscript::BStruct::FindMember | ( | const char * | name | ) |
Definition at line 216 of file bstruct.cpp.
References Pol::Bscript::BStructIterator::key.
Referenced by Pol::Module::ConfigFileExecutorModule::mf_AppendConfigFileElem(), Pol::Module::OSExecutorModule::mf_HTTPRequest(), and Pol::Module::UOExecutorModule::mf_SendPopUpMenu().
|
protectedvirtual |
Definition at line 113 of file bstruct.cpp.
|
protectedvirtual |
Reimplemented from Pol::Bscript::BObjectImp.
Definition at line 231 of file bstruct.cpp.
References Pol::Bscript::UninitObject::create(), and Pol::Bscript::BStructIterator::key.
|
protectedvirtual |
Implements Pol::Bscript::BObjectImp.
Definition at line 412 of file bstruct.cpp.
References Pol::Bscript::BStructIterator::key, OSTRINGSTREAM, and OSTRINGSTREAM_STR.
| size_t Pol::Bscript::BStruct::mapcount | ( | ) | const |
Definition at line 190 of file bstruct.cpp.
Referenced by Pol::Module::BasicExecutorModule::len().
|
protectedvirtual |
Reimplemented from Pol::Bscript::BObjectImp.
Definition at line 452 of file bstruct.cpp.
References Pol::Bscript::BStructIterator::key.
|
protectedvirtual |
Reimplemented from Pol::Bscript::BObjectImp.
Definition at line 437 of file bstruct.cpp.
References Pol::Bscript::BStructIterator::key.
|
protectedvirtual |
Reimplemented from Pol::Bscript::BObjectImp.
Definition at line 459 of file bstruct.cpp.
References ref_counted::count(), and Pol::Bscript::BStructIterator::key.
|
protectedvirtual |
Reimplemented from Pol::Bscript::BObjectImp.
Reimplemented in Pol::Bscript::BError.
Definition at line 246 of file bstruct.cpp.
References Pol::Bscript::UninitObject::create(), Pol::Bscript::String::find(), Pol::Bscript::BObject::impptr(), Pol::Bscript::BObjectImp::isa(), Pol::Bscript::BObjectImp::OTLong, Pol::Bscript::BObjectImp::OTString, and Pol::Bscript::String::value().
|
protectedvirtual |
Reimplemented from Pol::Bscript::BObjectImp.
Definition at line 399 of file bstruct.cpp.
References Pol::Bscript::BStructIterator::key, and Pol::Bscript::String::packonto().
|
protectedvirtual |
Reimplemented in Pol::Bscript::BError.
Definition at line 73 of file bstruct.cpp.
|
protectedvirtual |
Reimplemented from Pol::Bscript::BObjectImp.
Definition at line 196 of file bstruct.cpp.
References Pol::Bscript::BObjectImp::copy(), and Pol::Bscript::BStructIterator::key.
|
protectedvirtual |
Implements Pol::Bscript::BObjectImp.
Definition at line 178 of file bstruct.cpp.
References Pol::Bscript::BObjectRef::sizeEstimate().
|
protectedvirtual |
Reimplemented from Pol::Bscript::BObjectImp.
Reimplemented in Pol::Bscript::BError.
Definition at line 83 of file bstruct.cpp.
|
protectedvirtual |
Reimplemented from Pol::Bscript::BObjectImp.
Reimplemented in Pol::Bscript::BError.
Definition at line 87 of file bstruct.cpp.
References Pol::Bscript::BObjectImp::OTStruct.
|
protectedvirtual |
Reimplemented in Pol::Bscript::BError.
Definition at line 78 of file bstruct.cpp.
|
static |
Definition at line 93 of file bstruct.cpp.
References BStruct(), and Pol::Bscript::BObjectImp::OTStruct.
Referenced by Pol::Bscript::BObjectImp::unpack().
|
friend |
|
private |
Definition at line 88 of file bstruct.h.
Referenced by BStruct(), and Pol::Bscript::BStructIterator::step().