List forward declaration. More...
Inherits System::Object, and System::Collections::Generic::IList< T >.
Classes | |
class | Enumerator |
Public Types | |
typedef T | ValueType |
This type. More... | |
typedef IList< T > | BaseType |
Interface type. More... | |
typedef std::vector< T, typename pointer_mode_t::allocator_type > | vector_t |
Underlying data type. More... | |
typedef SharedPtr< IEnumerable< T > > | IEnumerablePtr |
Container holding elements of same type we hold. More... | |
typedef SharedPtr< IEnumerator< T > > | IEnumeratorPtr |
Enumerator type. More... | |
![]() | |
typedef SmartPtr< Object > | ptr |
Alias for smart pointer type. More... | |
typedef System::Details::SharedMembersType | shared_members_type |
structure to keep list of shared pointers contained in object. More... | |
![]() | |
typedef ICollection< T > | BaseType |
Base type. More... | |
typedef IList< T > | ThisType |
This type. More... | |
typedef T | ValueType |
Value type. More... | |
![]() | |
typedef T | ValueType |
Value type name. More... | |
typedef ICollection< T > | ThisType |
Collection type name. More... | |
![]() | |
typedef IEnumerator< T > | IEnumeratorType |
Enumerator type. More... | |
Public Member Functions | |
List () | |
Creates empty list. More... | |
List (int capacity) | |
List (IEnumerablePtr collection) | |
void | AddInitializer (int size, const T inits[]) |
IEnumeratorPtr | GetEnumerator () override |
int | get_Count () const override |
void | Add (const T &item) override |
void | Clear () override |
Deletes all elements. More... | |
bool | Contains (const T &item) const override |
bool | Remove (const T &item) override |
void | CopyTo (System::ArrayPtr< T > array, int arrayIndex) override |
int | IndexOf (const T &item) const override |
void | Insert (int index, const T &item) override |
void | RemoveAt (int index) override |
T | idx_get (int index) const override |
void | idx_set (int index, T value) override |
int | get_Capacity () const |
void | set_Capacity (int capacity) |
void | AddRange (IEnumerablePtr collection) |
SharedPtr< System::Collections::ObjectModel::ReadOnlyCollection< T > > | AsReadOnly () |
int | BinarySearch (const T &item) const |
int | BinarySearch (const T &item, const SharedPtr< System::Collections::Generic::IComparer< T > > &comparer) const |
int | BinarySearch (int index, int count, const T &item, const SharedPtr< System::Collections::Generic::IComparer< T > > &comparer) const |
template<typename OutputType > | |
SharedPtr< List< OutputType > > | ConvertAll (Converter< T, OutputType > converter) |
void | CopyTo (const System::ArrayPtr< T > &array) |
void | CopyTo (int index, const System::ArrayPtr< T > &array, int arrayIndex, int count) |
bool | Exists (System::Predicate< T > match) |
T | Find (System::Predicate< T > predicate) |
ListPtr< T > | FindAll (System::Predicate< T > match) |
int | FindIndex (System::Predicate< T > match) |
int | FindIndex (int startIndex, System::Predicate< T > match) |
int | FindIndex (int startIndex, int count, System::Predicate< T > match) |
T | FindLast (System::Predicate< T > match) |
void | ForEach (System::Action< T > action) |
ThisPtr | GetRange (int index, int count) |
int | IndexOf (const T &item, int index) const |
void | InsertRange (int index, IEnumerablePtr collection) |
int32_t | LastIndexOf (const T &item) const |
int32_t | LastIndexOf (const T &item, int32_t index) const |
int32_t | LastIndexOf (const T &item, int32_t index, int32_t count) const |
int | RemoveAll (Predicate< T > match) |
void | RemoveRange (int index, int count) |
void | Reverse () |
Reverses elements order of the whole list. More... | |
void | Reverse (int index, int count) |
void | Sort (const SharedPtr< System::Collections::Generic::IComparer< T > > &comparator) |
void | Sort () |
Sorts elements in the list using default comparator. More... | |
void | Sort (int index, int count, SharedPtr< System::Collections::Generic::IComparer< T > > comparator) |
void | Sort (Comparison< T > comparison, bool) |
ArrayPtr< T > | ToArray () const |
void | TrimExcess () |
Makes list capacity to fit its size. More... | |
vector_t::reference | operator[] (int index) |
vector_t::const_reference | operator[] (int index) const |
vector_t & | data () |
const vector_t & | data () const |
void | _add_range (std::initializer_list< T > list) |
void | SetTemplateWeakPtr (unsigned int argument) override |
![]() | |
ASPOSECPP_SHARED_API | Object () |
Creates object. Initializes all internal data structures. More... | |
virtual ASPOSECPP_SHARED_API | ~Object () |
Destroys object. Frees all internal data structures. More... | |
ASPOSECPP_SHARED_API | Object (Object const &x) |
Copy constructor. Doesn't copy anything, really, just initializes new object and enables copy constructing subclasses. More... | |
Object & | operator= (Object const &x) |
Assignment operator. Doesn't copy anything, really, just initializes new object and enables copy constructing subclasses. More... | |
Object * | SharedRefAdded () |
Increments shared reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More... | |
int | SharedRefRemovedSafe () |
Decrements and returns shared reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More... | |
int | RemovedSharedRefs (int count) |
Decreases shared reference count by specified value. More... | |
Detail::SmartPtrCounter * | WeakRefAdded () |
Increments weak reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More... | |
void | WeakRefRemoved () |
Decrements weak reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More... | |
Detail::SmartPtrCounter * | GetCounter () |
Gets reference counter data structure associated with the object. More... | |
int | SharedCount () const |
Gets current value of shared refernce counter. More... | |
ASPOSECPP_SHARED_API void | Lock () |
Implements C# lock() statement locking. Call directly or use LockContext sentry object. More... | |
ASPOSECPP_SHARED_API void | Unlock () |
Implements C# lock() statement unlocking. Call directly or use LockContext sentry object. More... | |
virtual ASPOSECPP_SHARED_API bool | Equals (ptr obj) |
Compares objects using C# Object.Equals semantics. More... | |
virtual ASPOSECPP_SHARED_API int | GetHashCode () const |
Analog of C# Object.GetHashCode() method. Enables hashing of custom objects. More... | |
virtual ASPOSECPP_SHARED_API String | ToString () ASPOSE_CONST |
Analog of C# Object.ToString() method. Enables converting custom objects to string. More... | |
virtual ASPOSECPP_SHARED_API ptr | MemberwiseClone () const |
Analog of C# Object.MemberwiseClone() method. Enables cloning custom types. More... | |
virtual ASPOSECPP_SHARED_API const TypeInfo & | GetType () const |
Gets actual type of object. Analog of C# System.Object.GetType() call. More... | |
virtual ASPOSECPP_SHARED_API bool | Is (const TypeInfo &targetType) const |
Check if object represents an instance of type described by targetType. Analog of C# 'is' operator. More... | |
template<> | |
bool | Equals (float const &objA, float const &objB) |
template<> | |
bool | Equals (double const &objA, double const &objB) |
template<> | |
bool | ReferenceEquals (String const &str, std::nullptr_t) |
template<> | |
bool | ReferenceEquals (String const &str1, String const &str2) |
![]() | |
virtual bool | get_IsReadOnly () const |
ICollection & | operator= (ICollection &&) |
ICollection & | operator= (const ICollection &) |
ICollection () | |
Default constructor. More... | |
ICollection (const ICollection &) | |
Copy constructor. More... | |
ICollection (ICollection &&) | |
Move constructor. More... | |
virtual | ~ICollection () |
Destructor. More... | |
Additional Inherited Members | |
![]() | |
static bool | ReferenceEquals (ptr const &objA, ptr const &objB) |
Compares objects by reference. More... | |
template<typename T > | |
static std::enable_if<!IsSmartPtr< T >::value, bool >::type | ReferenceEquals (T const &objA, T const &objB) |
Compares objects by reference. More... | |
template<typename T > | |
static std::enable_if<!IsSmartPtr< T >::value, bool >::type | ReferenceEquals (T const &objA, std::nullptr_t) |
Reference-compares value type object with nullptr. More... | |
template<typename T1 , typename T2 > | |
static std::enable_if< IsSmartPtr< T1 >::value &&IsSmartPtr< T2 >::value, bool >::type | Equals (T1 const &objA, T2 const &objB) |
Compares reference type objects in C# style. More... | |
template<typename T1 , typename T2 > | |
static std::enable_if<!IsSmartPtr< T1 >::value &&!IsSmartPtr< T2 >::value, bool >::type | Equals (T1 const &objA, T2 const &objB) |
Compares value type objects in C# style. More... | |
static const TypeInfo & | Type () |
Impleemnts C# typeof(System.Object) construct. More... | |
List forward declaration.
List - wrapper around std::vector to be used in ported code. Requires operator == to be impemented for element type. Objects of this class should only be allocated using System::MakeObject() function. Never create instance of this type on stack or using operator new, as it will result in runtime errors and/or assertion faults. Always wrap this class into System::SmartPtr pointer and use this pointer to pass it to functions as argument.
T | Element type. |
typedef IList<T> System::Collections::Generic::List< T >::BaseType |
Interface type.
typedef SharedPtr<IEnumerable<T> > System::Collections::Generic::List< T >::IEnumerablePtr |
Container holding elements of same type we hold.
typedef SharedPtr<IEnumerator<T> > System::Collections::Generic::List< T >::IEnumeratorPtr |
Enumerator type.
typedef T System::Collections::Generic::List< T >::ValueType |
This type.
typedef std::vector<T, typename pointer_mode_t::allocator_type> System::Collections::Generic::List< T >::vector_t |
Underlying data type.
|
inline |
Creates empty list.
|
inline |
Creates list with pre-defined capacity.
capacity | Number of elements to reserve. |
|
inline |
Copy constructor.
collection | Collection to copy data from. |
|
inline |
C++ specific
list | Range to insert into container. |
|
inlineoverridevirtual |
Adds element to the end of list.
item | Item to add. |
Implements System::Collections::Generic::ICollection< T >.
|
inline |
Adds elements to list; used when translating initializers.
size | Number of elements to insert. |
inits | Elements to insert. |
|
inline |
Adds all elements from collection (or itself) to the end of current list.
collection | Collection to copy elements from. |
|
inline |
Gets read-only reference to this collection.
|
inline |
Looks for item in a sorted list.
item | Item to look for. |
|
inline |
Looks for item in a sorted list.
item | Item to look for. |
comparer | Comparer to use. |
|
inline |
Looks for item in a sorted list.
index | Range beginning. |
count | Range size. |
item | Item to look for. |
comparer | Comparer to use. |
|
inlineoverridevirtual |
Deletes all elements.
Implements System::Collections::Generic::ICollection< T >.
|
inlineoverridevirtual |
Checks if item is present in list.
item | Item to look for. |
Implements System::Collections::Generic::ICollection< T >.
|
inline |
Creates a list of elements converted to different type.
OutputType | Output list element type. |
converter | Converter to use for items conversion. |
|
inlineoverridevirtual |
Copies list elements into existing array elements.
array | Destination array. |
arrayIndex | Destination array starting index. |
Implements System::Collections::Generic::ICollection< T >.
|
inline |
Copies all elements into existing array elements.
array | Array to copy elements into. |
|
inline |
Copies elements starting from the specified index into existing array elements.
index | A 0-based index of the element in the list represented by the current object to start copying from |
array | Array to copy elements into. |
arrayIndex | Beginning position in desitnation array. |
count | Number of elements to copy. |
|
inline |
Underlying data structure access function.
|
inline |
Underlying data structure access function.
|
inline |
Checks if element adhering to specific predicate exists in list.
match | Predicate to check elements with. |
|
inline |
Looks for element adhering to specific predicate.
predicate | Predicate to check elements with. |
|
inline |
Looks for elements adhering to specific predicate.
match | Predicate to check elements with. |
|
inline |
Looks for element adhering to specific predicate.
match | Predicate to check elements with. |
|
inline |
Looks for element adhering to specific predicate.
startIndex | Index to start search from. |
match | Predicate to check elements with. |
|
inline |
Looks for element adhering to specific predicate.
startIndex | Index to start search from. |
count | Number of elements to look through. |
match | Predicate to check elements with. |
|
inline |
Looks for last element adhering to specific predicate.
match | Predicate to check elements with. |
|
inline |
Applies action to all elements in list.
action | Action to apply. |
|
inline |
Gets current list capacity.
|
inlineoverridevirtual |
Gets number of elements in current list.
Implements System::Collections::Generic::ICollection< T >.
|
inlineoverridevirtual |
Gets enumerator to iterate through list elements.
Implements System::Collections::Generic::IEnumerable< T >.
|
inline |
Creates slice of list.
index | Range start index. |
count | Range size. |
|
inlineoverridevirtual |
Gets element at specific position.
index | Index to get element from. |
Implements System::Collections::Generic::IList< T >.
|
inlineoverridevirtual |
Sets element at specific position.
index | Index to set element at. |
value | Value to set to specified position. |
Implements System::Collections::Generic::IList< T >.
|
inlineoverridevirtual |
Gets first index of specific item.
item | Item to look for. |
Implements System::Collections::Generic::IList< T >.
|
inline |
Looks for specific item in list.
item | Item to look for. |
index | Index to start lookup at. |
|
inlineoverridevirtual |
Inserts item at specified position.
index | Index to insert item into. |
item | Item to insert. |
Implements System::Collections::Generic::IList< T >.
|
inline |
Inserts data range at specific position.
index | Index to insert data at. |
collection | Collection of elements to insert. |
|
inline |
Searches for the specified object and returns the zero-based index of the last occurrence within the entire list
item | The object to locate in the list |
|
inline |
Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the List that extends from the first element to the specified index.
item | The object to locate in the list |
index | The zero-based starting index of the backward search. |
|
inline |
Searches for the specified object and returns the zero-based index of the last occurrence within the range of elements in the List that contains the specified number of elements and ends at the specified index.
item | The object to locate in the List |
index | The zero-based starting index of the backward search. |
count | The number of elements in the section to search. |
|
inline |
Accessor function.
index | Index to get element from. |
|
inline |
Accessor function.
index | Index to get element from. |
|
inlineoverridevirtual |
Removes first instance of specific item from list.
item | Item to remove. |
Implements System::Collections::Generic::ICollection< T >.
|
inline |
Removes all elements matching specific predicate.
match | Predicate to check elements with. |
|
inlineoverridevirtual |
Removes item at specified position.
index | Index to delete item at. |
Implements System::Collections::Generic::IList< T >.
|
inline |
Removes slice of list.
index | Slice beginning position. |
count | Number of elements to remove. |
|
inline |
Reverses elements order of the whole list.
|
inline |
Reverses elements order of the list slice.
index | Slice beginning index. |
count | Slice size. |
|
inline |
Sets list capacity.
capacity | Capacity to set (can't be less than current size). |
|
inlineoverridevirtual |
Makes list treat stored pointers as weak (if applicable).
argument | Should be 0 as there is only one template argument present. |
Reimplemented from System::Object.
|
inline |
Sorts elements in the list.
comparator | Comparator to use. |
|
inline |
Sorts elements in the list using default comparator.
|
inline |
Sorts elements in the list slice.
index | Slice beginning index. |
count | Slice size. |
comparator | Comparator to use. |
|
inline |
Sorts elements in the list.
comparison | Comparison to use. |
|
inline |
Converst list to array.
|
inline |
Makes list capacity to fit its size.