diff options
Diffstat (limited to 'src/components/smart_objects/include/smart_objects/array_schema_item.h')
-rw-r--r-- | src/components/smart_objects/include/smart_objects/array_schema_item.h | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/src/components/smart_objects/include/smart_objects/array_schema_item.h b/src/components/smart_objects/include/smart_objects/array_schema_item.h index 8f9a179fff..43870ddb42 100644 --- a/src/components/smart_objects/include/smart_objects/array_schema_item.h +++ b/src/components/smart_objects/include/smart_objects/array_schema_item.h @@ -63,6 +63,13 @@ class CArraySchemaItem : public ISchemaItem { const TSchemaItemParameter<size_t>& MaxSize = TSchemaItemParameter<size_t>()); + static std::shared_ptr<CArraySchemaItem> create( + ISchemaItem* ElementSchemaItem, + const TSchemaItemParameter<size_t>& MinSize = + TSchemaItemParameter<size_t>(), + const TSchemaItemParameter<size_t>& MaxSize = + TSchemaItemParameter<size_t>()); + /** * @brief Validate smart object. * @param Object Object to validate. @@ -131,10 +138,16 @@ class CArraySchemaItem : public ISchemaItem { const TSchemaItemParameter<size_t>& MinSize, const TSchemaItemParameter<size_t>& MaxSize); + CArraySchemaItem(ISchemaItem* ElementSchemaItem, + const TSchemaItemParameter<size_t>& MinSize, + const TSchemaItemParameter<size_t>& MaxSize); + /** * @brief SchemaItem for array elements. **/ - const ISchemaItemPtr mElementSchemaItem; + ISchemaItem* mElementSchemaItem; + const ISchemaItemPtr mElementSchemaItemShared; + /** * @brief Minimum allowed size. **/ |