#include <BehaviorContext.h>
Classes | |
struct | ScopedBehaviorObject |
Public Types | |
using | AllocateType = void *(*)(void *userData) |
Hooks to override default memory allocation for the class (AZ_CLASS_ALLOCATOR is used by default) | |
using | DeallocateType = void(*)(void *address, void *userData) |
using | DefaultConstructorType = void(*)(void *address, void *userData) |
Default constructor and destructor custom function. | |
using | DestructorType = void(*)(void *objectPtr, void *userData) |
using | CopyContructorType = void(*)(void *address, const void *sourceObjectPtr, void *userData) |
Clone object over an existing address. | |
using | MoveContructorType = void(*)(void *address, void *sourceObjectPtr, void *userData) |
Move object over an existing address. | |
using | ValueHasherType = AZStd::function< size_t(void *)> |
Hash a value of a class. | |
using | EqualityComparisonType = bool(*)(const void *lhs, const void *rhs, void *userData) |
Compare values. | |
Public Member Functions | |
AZ_CLASS_ALLOCATOR (BehaviorClass, SystemAllocator) | |
BehaviorObject | Create () const |
BehaviorObject | Create (void *address) const |
ScopedBehaviorObject | CreateWithScope () const |
ScopedBehaviorObject | CreateWithScope (void *address) const |
ScopedBehaviorObject | CreateWithScope (AZStd::span< BehaviorArgument > arguments) const |
ScopedBehaviorObject | CreateWithScope (void *address, AZStd::span< BehaviorArgument > arguments) const |
BehaviorObject | Clone (const BehaviorObject &object) const |
BehaviorObject | Move (BehaviorObject &&object) const |
void | Destroy (const BehaviorObject &object) const |
void * | Allocate () const |
Allocate a class, NO CONSTRUCTOR is called, only memory is allocated, call Construct or use Create to allocate and create the object. | |
void | Deallocate (void *address) const |
Deallocate a class, NO DESTRUCTOR is called, only memory is free, call Destruct or use Destroy to destroy and free the object. | |
AZ::Attribute * | FindAttribute (const AttributeId &attributeId) const |
bool | HasAttribute (const AttributeId &attributeId) const |
const BehaviorMethod * | FindMethodByReflectedName (const AZStd::string &reflectedName) const |
bool | IsMethodOverloaded (const AZStd::string &string) const |
AZStd::vector< BehaviorMethod * > | GetOverloads (const AZStd::string &string) const |
AZStd::vector< BehaviorMethod * > | GetOverloadsIncludeMethod (BehaviorMethod *method) const |
AZStd::vector< BehaviorMethod * > | GetOverloadsExcludeMethod (BehaviorMethod *method) const |
void | PostProcessMethod (BehaviorContext *context, BehaviorMethod &method) |
const BehaviorProperty * | FindPropertyByReflectedName (AZStd::string_view reflectedName) const |
const BehaviorMethod * | FindGetterByReflectedName (AZStd::string_view reflectedName) const |
const BehaviorMethod * | FindSetterByReflectedName (AZStd::string_view reflectedName) const |
Public Attributes | |
AllocateType | m_allocate |
DeallocateType | m_deallocate |
DefaultConstructorType | m_defaultConstructor |
AZStd::vector< BehaviorMethod * > | m_constructors |
DestructorType | m_destructor |
CopyContructorType | m_cloner |
MoveContructorType | m_mover |
EqualityComparisonType | m_equalityComparer |
void * | m_userData |
AZStd::string | m_name |
AZStd::vector< AZ::Uuid > | m_baseClasses |
AZStd::unordered_map< AZStd::string, BehaviorMethod * > | m_methods |
AZStd::unordered_map< AZStd::string, BehaviorProperty * > | m_properties |
AttributeArray | m_attributes |
AZStd::unordered_set< AZStd::string > | m_requestBuses |
AZStd::unordered_set< AZStd::string > | m_notificationBuses |
AZ::Uuid | m_typeId |
IRttiHelper * | m_azRtti |
size_t | m_alignment |
size_t | m_size |
BehaviorClassUnwrapperFunction | m_unwrapper |
ValueHasherType | m_valueHasher |
UnwrapperUserData | m_unwrapperUserData |
AZ::Uuid | m_wrappedTypeId |
Behavior representation of reflected class.