CodePorting.Translator Cs2Cpp
CodePorting.Translator.Cs2Cpp.Framework
group_collection.h
1
2#ifndef _aspose_system_text_regularexpressions_group_collection_h_
3#define _aspose_system_text_regularexpressions_group_collection_h_
4
5#include <map>
6
7#include <system/text/regularexpressions/group.h>
8#include <system/collections/list.h>
9
10namespace System {
11namespace Text {
12namespace RegularExpressions {
13
14class Match;
15
20class ASPOSECPP_SHARED_CLASS GroupCollection : public System::Collections::Generic::List<GroupPtr>
21{
22public:
26 using Base::idx_get;
28 using Base::operator[];
29
32 ASPOSECPP_SHARED_API GroupCollection(const WeakPtr<Match>& match);
33
36 void Add(const GroupPtr &item) override { ASPOSE_UNUSED(item); }
38 void Clear() override {}
41 bool Remove(const GroupPtr& item) override { ASPOSE_UNUSED(item); return false; }
44 bool IsReadOnly() const { return true; }
45
49 GroupPtr operator[](const String& name) const
50 {
51 return idx_get(name);
52 }
56 virtual ASPOSECPP_SHARED_API GroupPtr idx_get(String name) const;
60 ASPOSECPP_SHARED_API GroupPtr idx_get(int index) const override;
61
65 GroupPtr get_Item(int index) const { return idx_get(index); }
69 GroupPtr get_Item(const String& name) const { return idx_get(name); }
72 void AddGroup(const GroupPtr &item);
73
74protected:
76 ASPOSECPP_SHARED_API ~GroupCollection() override;
77
82
83
84#ifdef __DBG_FOR_EACH_MEMBER
85public:
88 void DBG_for_each_member(DBG::for_each_member_visitor &visitor) const override
89 {
91 visitor.add_self(this);
92 }
93
96 const char* DBG_class_name() const override { return "GroupCollection"; }
97#endif
98};
99
103class GroupCollectionPtr : public SharedPtr<GroupCollection>
104{
105public:
111
115 GroupPtr operator[] (size_t idx) const
116 {
117 return this->GetPointer()->get_Item((int)idx);
118 }
119};
120
121}}}
122
123#endif // _aspose_system_text_regularexpressions_group_collection_h_
List forward declaration.
Definition: list.h:127
Pointer class to wrap types being allocated on heap. Use it to manage memory for classes inheriting O...
Definition: smart_ptr.h:180
Pointee_ * GetPointer() const
Gets pointed object (if any) or nullptr. Same as get().
Definition: smart_ptr.h:797
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
List of capture groups in a single match. Objects of this class should only be allocated using System...
Definition: group_collection.h:21
bool Remove(const GroupPtr &item) override
Disables removing element from collection.
Definition: group_collection.h:41
void Clear() override
Disables dropping elements from collection.
Definition: group_collection.h:38
GroupPtr operator[](const String &name) const
Group accessor.
Definition: group_collection.h:49
System::Collections::Generic::List< GroupPtr > Base
Base class.
Definition: group_collection.h:24
GroupPtr idx_get(int index) const override
Group accessor.
GroupPtr get_Item(int index) const
Group accessor.
Definition: group_collection.h:65
virtual GroupPtr idx_get(String name) const
Group accessor.
GroupCollection()
Constructor.
Definition: group_collection.h:79
GroupCollection(const WeakPtr< Match > &match)
Constructor.
GroupPtr get_Item(const String &name) const
Group accessor.
Definition: group_collection.h:69
bool IsReadOnly() const
Marks collection as read-only.
Definition: group_collection.h:44
void Add(const GroupPtr &item) override
Disables adding element into collection.
Definition: group_collection.h:36
WeakPtr< Match > match
Match/.
Definition: group_collection.h:81
void AddGroup(const GroupPtr &item)
Adds group into collection.
Group collection pointer. This type is a pointer to manage other object's deletion....
Definition: group_collection.h:104
GroupCollectionPtr(const SharedPtr< GroupCollection > &obj)
Type convesion constructor.
Definition: group_collection.h:110
GroupCollectionPtr()
Null pointer constructor.
Definition: group_collection.h:107
Subclass of System::SmartPtr which sets itself to weak mode at construction. Please note that this cl...
Definition: weak_ptr.h:18
@ Text
Defines color adjustment information for text.
Definition: db_command.h:9