2#ifndef _aspose_system_collections_specialized_string_collection_h
3#define _aspose_system_collections_specialized_string_collection_h
5#include "system/object.h"
6#include "system/string.h"
7#include "system/array.h"
9#include "system/collections/icollection.h"
10#include "system/collections/base_enumerator.h"
13namespace Collections {
14namespace Specialized {
74 ASPOSECPP_SHARED_API
void Clear();
96 ASPOSECPP_SHARED_API std::vector<System::String>&
data();
99 ASPOSECPP_SHARED_API
const std::vector<System::String>&
data()
const;
103 typedef typename std::vector<System::String>::iterator
iterator;
166 ASPOSECPP_SHARED_API
System::Details::VirtualizedIteratorBase<
System::
String>* virtualizeBeginIterator() override;
167 ASPOSECPP_SHARED_API
System::Details::VirtualizedIteratorBase<
System::
String>* virtualizeEndIterator() override;
168 ASPOSECPP_SHARED_API
System::Details::VirtualizedIteratorBase<
System::
String>* virtualizeBeginConstIterator() const override;
169 ASPOSECPP_SHARED_API
System::Details::VirtualizedIteratorBase<
System::
String>* virtualizeEndConstIterator() const override;
178#ifdef __DBG_FOR_EACH_MEMBER
182 void DBG_for_each_member(DBG::for_each_member_visitor &visitor)
const override
184 visitor.add_self(
this);
189 const char* DBG_class_name()
const override {
return "StringCollection<T>"; }
208 return (**
this)[idx];
Interface of object providing enumerator on contained elements.
Definition: ienumerable.h:25
Iterator class for simple containers holding elements directly using rbegin() and rend() functions....
Definition: base_enumerator.h:81
Enumerator type to iterate through string collection.
Definition: string_collection.h:28
Enumerator(const SharedPtr< StringCollection > &data)
Constructs enumerator iterating through specified collection.
Definition: string_collection.h:32
RTTI_INFO(StringCollection::Enumerator, ::System::BaseTypesInfo< System::Object >)
RTTI information.
Indexed list of strings. Objects of this class should only be allocated using System::MakeObject() fu...
Definition: string_collection.h:21
iterator begin() noexcept
Returns an iterator to the first element of the container. If the container is empty,...
System::String idx_get(int index) const
Gets value at specified position.
void RemoveAt(int index)
Removes element at specified position.
std::vector< System::String >::reverse_iterator reverse_iterator
Reverse iterator type.
Definition: string_collection.h:107
void Remove(const System::String &value)
Removes first occurrence of specified string.
void CopyTo(const ArrayPtr< System::String > &arr, const int32_t index) const
Copy elements to existing arra elements.
void Clear()
Deletes all elements.
std::vector< System::String >::const_reverse_iterator const_reverse_iterator
Const reverse iterator type.
Definition: string_collection.h:109
System::String & operator[](int index)
Accessor function.
std::vector< System::String >::const_iterator const_iterator
Const iterator type.
Definition: string_collection.h:105
void AddRange(const ArrayPtr< System::String > &range)
Add elements into container.
int IndexOf(const System::String &value) const
Looks for specific string in container.
int Add(const System::String &value)
Adds value to the end of the list.
int get_Count() const
Gets number of elements in collection.
SharedPtr< Generic::IEnumerator< System::String > > GetEnumerator() override
Gets enumerator iterating through current collection.
Definition: string_collection.h:42
StringCollection()
Constructs empty string collection.
void idx_set(int index, const System::String &value)
Sets value at specified position.
std::vector< System::String >::iterator iterator
Iterator type.
Definition: string_collection.h:103
const std::vector< System::String > & data() const
Internal data structure accessor.
std::vector< System::String > & data()
Internal data structure accessor.
bool Contains(const System::String &value) const
Checks whether specific string is present in container.
void Insert(int index, const System::String &value)
Inserts specific value into container.
Stirng collection poiner with access operator.
Definition: string_collection.h:195
StringCollectionPtr(const SharedPtr< StringCollection > &obj)
Constructs pointer to specific collection.
Definition: string_collection.h:201
StringCollectionPtr()
Constructs null pointer.
Definition: string_collection.h:198
Pointer class to wrap types being allocated on heap. Use it to manage memory for classes inheriting O...
Definition: smart_ptr.h:180
decltype(System::Details::GetByIndex(std::declval< const SmartPtr_ * >(), std::declval< IdxType >()) operator[])(IdxType idx) const
Accessor for array elements. Only compiles if SmartPtr_ is specialization of System::Array.
Definition: smart_ptr.h:822
String class used across the library. Is a substitute for C# System.String when translating code....
Definition: string.h:122
Definition: db_command.h:9
SmartPtr< X > MakeSharedPtr(X *p)
Converts raw pointer to smart pointer.
Definition: smart_ptr.h:1650