Angelscript addon Template Containers  1.0
STL container powerr for Angelscript
aatc_container_shared_1tp_template< T_container, T_CONTAINERTYPEID, bcw > Class Template Reference

Internal template monster. More...

#include <aatc_shared_template.hpp>

Inheritance diagram for aatc_container_shared_1tp_template< T_container, T_CONTAINERTYPEID, bcw >:
aatc_container_base aatc_refcounted_GC aatc_containerfunctor_Settings

Classes

class  aatc_iterator
 

Public Types

typedef T_container::iterator iteratortype
 

Public Member Functions

 aatc_container_shared_1tp_template (asIScriptEngine *_engine, asIObjectType *_objtype)
 
void operator= (const aatc_container_shared_1tp_template &other)
 
void swap (aatc_container_shared_1tp_template &other)
 
void SetDirectcomp (bool ss)
 
void StoreHandle (void **target, void *ptr_to_handle)
 
void * StoreHandle2 (void *ptr_to_handle)
 
void ReleaseHandle (void *handle)
 
aatc_type_sizetype Count (void *value)
 
bool Contains_generic (void *value)
 
void Clear ()
 
bool Empty ()
 
aatc_type_sizetype Size ()
 
void EnumReferences (asIScriptEngine *engine)
 
void ReleaseAllReferences (asIScriptEngine *engine)
 
template<class T >
void Push_Back (void *value)
 
template<class T >
void Pop_Back ()
 
template<>
void Push_Back (void *value)
 
template<>
void Pop_Back ()
 
template<class T >
void * Back ()
 
template<>
void * Back ()
 
template<class T >
void Push_Front (void *value)
 
template<class T >
void Pop_Front ()
 
template<>
void Push_Front (void *value)
 
template<>
void Pop_Front ()
 
template<class T >
void * Front ()
 
template<>
void * Front ()
 
template<class T >
void Erase_value (void *value)
 
template<>
void Erase_value (void *value)
 
template<class T >
void * op_index (int index)
 
template<>
void * op_index (int index)
 
template<class T >
void Reserve (aatc_type_sizetype count)
 
template<>
void Reserve (aatc_type_sizetype count)
 
template<class T >
void Insert (void *value)
 
template<>
void Insert (void *value)
 
template<typename T_is_native >
void Sort (bool ascending)
 
template<typename T_is_native >
void Sort_custom (aatc_script_Funcpointer *funcptr, bool ascending)
 
template<class T >
bool Contains_native (void *value)
 
template<>
bool Contains_native (void *value)
 
template<class T_is_native >
void Insert_generic_index_before (int index, void *value)
 
template<class T_is_native >
void Erase_generic_index (int position)
 
template<class T_is_native >
void Erase_generic_index_range (int range_index_begin, int range_index_end)
 
template<class T_existence >
void Erase_generic_value (void *value, bool all)
 
template<class T_existence >
void Erase_generic_value (void *value)
 
aatc_iterator Begin ()
 
aatc_iterator End ()
 
template<class T >
bool Erase_iterator (const aatc_iterator &aatc_it)
 
template<>
bool Erase_iterator (const aatc_iterator &aatc_it)
 
template<class T >
aatc_type_sizetype Erase_range_iterator (const aatc_iterator &aatc_it_range_begin, const aatc_iterator &aatc_it_range_end)
 
template<>
aatc_type_sizetype Erase_range_iterator (const aatc_iterator &aatc_it_range_begin, const aatc_iterator &aatc_it_range_end)
 
template<class T >
aatc_iterator Find_iterator (void *value)
 
template<>
aatc_iterator Find_iterator (void *value)
 
 if (handlemode)
 
 if (it==T_container::end())
 
- Public Member Functions inherited from aatc_refcounted_GC
void refcount_Add ()
 
void refcount_Release ()
 
int GetRefCount ()
 
void SetGCFlag ()
 
bool GetGCFlag ()
 

Static Public Member Functions

template<class T_cond >
static void Register_func_back_write (asIScriptEngine *engine, int &r, char *textbuf, const char *n_container, const char *n_container_T)
 
template<>
static void Register_func_back_write (asIScriptEngine *engine, int &r, char *textbuf, const char *n_container, const char *n_container_T)
 
template<class T_cond >
static void Register_func_back_read (asIScriptEngine *engine, int &r, char *textbuf, const char *n_container, const char *n_container_T)
 
template<>
static void Register_func_back_read (asIScriptEngine *engine, int &r, char *textbuf, const char *n_container, const char *n_container_T)
 
template<class T_cond >
static void Register_func_front_write (asIScriptEngine *engine, int &r, char *textbuf, const char *n_container, const char *n_container_T)
 
template<>
static void Register_func_front_write (asIScriptEngine *engine, int &r, char *textbuf, const char *n_container, const char *n_container_T)
 
template<class T_cond >
static void Register_func_front_read (asIScriptEngine *engine, int &r, char *textbuf, const char *n_container, const char *n_container_T)
 
template<>
static void Register_func_front_read (asIScriptEngine *engine, int &r, char *textbuf, const char *n_container, const char *n_container_T)
 
template<class T_cond >
static void Register_func_erase_value (asIScriptEngine *engine, int &r, char *textbuf, const char *n_container, const char *n_container_T)
 
template<>
static void Register_func_erase_value (asIScriptEngine *engine, int &r, char *textbuf, const char *n_container, const char *n_container_T)
 
template<class T_cond >
static void Register_func_op_index (asIScriptEngine *engine, int &r, char *textbuf, const char *n_container, const char *n_container_T)
 
template<>
static void Register_func_op_index (asIScriptEngine *engine, int &r, char *textbuf, const char *n_container, const char *n_container_T)
 
template<class T_cond >
static void Register_func_reserve (asIScriptEngine *engine, int &r, char *textbuf, const char *n_container, const char *n_container_T)
 
template<>
static void Register_func_reserve (asIScriptEngine *engine, int &r, char *textbuf, const char *n_container, const char *n_container_T)
 
template<class T_cond >
static void Register_func_insert (asIScriptEngine *engine, int &r, char *textbuf, const char *n_container, const char *n_container_T)
 
template<>
static void Register_func_insert (asIScriptEngine *engine, int &r, char *textbuf, const char *n_container, const char *n_container_T)
 
template<class T_cond >
static void Register_func_sort_native (asIScriptEngine *engine, int &r, char *textbuf, const char *n_container, const char *n_container_T)
 
template<>
static void Register_func_sort_native (asIScriptEngine *engine, int &r, char *textbuf, const char *n_container, const char *n_container_T)
 
template<class T_cond >
static void Register_func_sort_generic (asIScriptEngine *engine, int &r, char *textbuf, const char *n_container, const char *n_container_T)
 
template<>
static void Register_func_sort_generic (asIScriptEngine *engine, int &r, char *textbuf, const char *n_container, const char *n_container_T)
 
template<class T_cond >
static void Register_func_contains_native (asIScriptEngine *engine, int &r, char *textbuf, const char *n_container, const char *n_container_T)
 
template<>
static void Register_func_contains_native (asIScriptEngine *engine, int &r, char *textbuf, const char *n_container, const char *n_container_T)
 
template<class T_is_native >
static void Register_func_insert_generic_index (asIScriptEngine *engine, int &r, char *textbuf, const char *n_container, const char *n_container_T)
 
template<>
static void Register_func_insert_generic_index (asIScriptEngine *engine, int &r, char *textbuf, const char *n_container, const char *n_container_T)
 
template<class T_is_native >
static void Register_func_erase_generic_index (asIScriptEngine *engine, int &r, char *textbuf, const char *n_container, const char *n_container_T)
 
template<>
static void Register_func_erase_generic_index (asIScriptEngine *engine, int &r, char *textbuf, const char *n_container, const char *n_container_T)
 
template<class T_existence >
static void Register_func_erase_generic_value (asIScriptEngine *engine, int &r, char *textbuf, const char *n_container, const char *n_container_T)
 
template<>
static void Register_func_erase_generic_value (asIScriptEngine *engine, int &r, char *textbuf, const char *n_container, const char *n_container_T)
 
template<class T_cond >
static void Register_func_Erase_iterator (asIScriptEngine *engine, int &r, char *textbuf, const char *n_container, const char *n_container_T, const char *n_iterator_TT)
 
template<>
static void Register_func_Erase_iterator (asIScriptEngine *engine, int &r, char *textbuf, const char *n_container, const char *n_container_T, const char *n_iterator_TT)
 
template<class T_cond >
static void Register_func_Erase_range_iterator (asIScriptEngine *engine, int &r, char *textbuf, const char *n_container, const char *n_container_T, const char *n_iterator_TT)
 
template<>
static void Register_func_Erase_range_iterator (asIScriptEngine *engine, int &r, char *textbuf, const char *n_container, const char *n_container_T, const char *n_iterator_TT)
 

Public Attributes

asIObjectType * objtype_container
 
asIObjectType * objtype_content
 
aatc_type_astypeid astypeid_container
 
aatc_type_astypeid astypeid_content
 
asDWORD typeflags_container
 
asDWORD typeflags_content
 
bool handlemode_needref
 
aatc_engine_level_storageels
 
aatc_container_operations_bitmask_type missing_functions
 
bool directcomp_forced
 
aatc_container_shared_1tp_template::aatc_iterator Find_iterator_generic
 
auto it = T_container::find(value)
 
void * vthis = this
 
aatc_iterator result & vthis
 
result it = it
 
return result
 
- Public Attributes inherited from aatc_container_base
asIScriptEngine * engine
 
int_fast16_t iterator_safety_version
 
- Public Attributes inherited from aatc_refcounted_GC
int refCount
 
bool gcFlag
 
- Public Attributes inherited from aatc_containerfunctor_Settings
bool handlemode
 
bool handlemode_directcomp
 
asIScriptFunction * func_cmp
 
asIScriptFunction * func_equals
 
asIScriptFunction * func_hash
 

Detailed Description

template<class T_container, int T_CONTAINERTYPEID, class bcw = aatc_bcw_basic<T_container>>
class aatc_container_shared_1tp_template< T_container, T_CONTAINERTYPEID, bcw >

Internal template monster.