Go to the source code of this file.
Classes |
|
class | Struct |
Defines |
|
#define | is_structdef(v) ((DbgVerify(!is_sourcepositionwrapper(v)), (v))->tag == class_tag(StructDef)) |
#define | is_struct(v) ((DbgVerify(!is_sourcepositionwrapper(v)), (v))->tag == INTERNAL_STRUCT_TAG) |
Functions |
|
visible_class_debug_ok (StructDef) class StructDef |
#define is_structdef | ( | v | ) | ((DbgVerify(!is_sourcepositionwrapper(v)), (v))->tag == class_tag(StructDef)) |
#define is_struct | ( | v | ) | ((DbgVerify(!is_sourcepositionwrapper(v)), (v))->tag == INTERNAL_STRUCT_TAG) |
visible_class_debug_ok | ( | StructDef | ) |
Define an equal operator (i.e. '==') for maxscript visible values.
Define a NOT equal operator (i.e. '!=') for maxscript visible values.
Definition at line 15 of file structs.h.
: public Value { friend StructMemberThunk; friend Struct; friend void Function::export_to_scripter(); private: Value* name; /* struct's global var name */ Value** member_inits; /* member init vals */ int member_count; /* " count */ HashTable* members; /* member name to index table */ HashTable* member_isPublicAccess; /* member name is public? */ HashTable* handlers; /* event handlers */ public: // note: if members is null, a default hashtable is created in the ctor // if member_isPublicAccess is null, all members are considered public. If member cannot be found in member_isPublicAccess, member is considered public ScripterExport StructDef(Value* name, int member_count, Value** inits, HashTable* members, HashTable* member_isPublicAccess, HashTable* handlers); ~StructDef(); classof_methods (StructDef, Value); # define is_structdef(v) ((DbgVerify(!is_sourcepositionwrapper(v)), (v))->tag == class_tag(StructDef)) void collect() { delete this; } void gc_trace(); ScripterExport void sprin1(CharStream* s); #include "..\macros\define_implementations.h" def_generic ( get_props, "getPropNames"); // LAM: added 4/27/00 def_generic ( show_props, "showProperties"); ScripterExport Value* apply(Value** arglist, int count, CallContext* cc=NULL); ScripterExport Value* get_property(Value** arg_list, int count); ScripterExport Value* set_property(Value** arg_list, int count); ScripterExport bool IsPropertyPublic(Value* prop); ScripterExport Value* Name(); ScripterExport void map_members(HashTabMapper* mapper); ScripterExport void map_members(void (*fn)(const void* key, const void* val, void* arg), void* arg); ScripterExport Value* get_member_value(Value* key); ScripterExport Value* put_member_value(Value* key, Value* value); };