2024-05-07 01:50:39 +04:00
|
|
|
|
namespace ProjectStormtrooper.CollectionGenericObjects;
|
2024-04-10 01:14:09 +04:00
|
|
|
|
|
|
|
|
|
public interface ICollectionGenericObjects<T>
|
|
|
|
|
where T : class
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Количество объектов в коллекции
|
|
|
|
|
/// </summary>
|
|
|
|
|
int Count { get; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Установка максимального количества элементов
|
|
|
|
|
/// </summary>
|
|
|
|
|
int SetMaxCount { set; }
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Добавление объекта в коллекцию
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="obj">Добавляемый объект</param>
|
2024-05-07 01:50:39 +04:00
|
|
|
|
/// <returns>Код результата вставки</returns>
|
|
|
|
|
int Insert(T obj);
|
2024-04-10 01:14:09 +04:00
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Добавление объекта в коллекцию на конкретную позицию
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="obj">Добавляемый объект</param>
|
|
|
|
|
/// <param name="position">Позиция</param>
|
2024-05-07 01:50:39 +04:00
|
|
|
|
/// <returns>Код результата вставки</returns>
|
|
|
|
|
int Insert(T obj, int position);
|
2024-04-10 01:14:09 +04:00
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Удаление объекта из коллекции с конкретной позиции
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="position">Позиция</param>
|
2024-05-07 01:50:39 +04:00
|
|
|
|
/// <returns>Код результата удаления</returns>
|
|
|
|
|
T Remove(int position);
|
2024-04-10 01:14:09 +04:00
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// Получение объекта по позиции
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="position">Позиция</param>
|
|
|
|
|
/// <returns>Объект</returns>
|
|
|
|
|
T? Get(int position);
|
2024-05-07 01:50:39 +04:00
|
|
|
|
}
|