This commit is contained in:
Alexander
2023-11-23 19:33:30 +03:00
parent fa7bb78ed4
commit 77c602cd9c
12 changed files with 85 additions and 127 deletions

View File

@@ -1,51 +1,35 @@
namespace anbs_cp.Structs;
/// <summary>
/// Пара ключ-значение
/// Пара ключ-значение
/// </summary>
/// <typeparam name="TK">Тип ключа</typeparam>
/// <typeparam name="TV">Тип значения</typeparam>
public struct KeyValue<TK, TV>
/// <param name="key">Ключ</param>
/// <param name="value">Значение</param>
public struct KeyValue<TK, TV>(TK key, TV? value)
{
#region Конструкторы
/// <summary>
/// Конструктор по умолчанию
/// </summary>
public KeyValue ()
{
Key = default;
Value = default;
}
/// <summary>
/// Конструктор со значениями
/// </summary>
/// <param name="key">Ключ</param>
/// <param name="value">Значение</param>
public KeyValue (TK key, TV value)
{
Key = key;
Value = value;
}
#endregion
#region Свойства
/// <summary>
/// Ключ
/// </summary>
public TK? Key { get; set; }
/// <summary>
/// Значение
/// Ключ
/// </summary>
public TV? Value { get; set; }
public TK Key { get; set; } = key;
/// <summary>
/// Значение
/// </summary>
public TV? Value { get; set; } = value;
#endregion
#region Методы
/// <summary>
/// Получает ключ-значение по умолчанию
/// Получает ключ-значение по умолчанию
/// </summary>
/// <returns>Ключ-значение по умолчанию</returns>
public static KeyValue<TK, TV> GetDefault() => new();
#endregion
}

View File

@@ -3,40 +3,20 @@
/// <summary>
/// Двумерный размер
/// </summary>
public struct TwoDimSize
/// <param name="width">Длина</param>
/// <param name="height">Высота</param>
public struct TwoDimSize (int width = 0, int height = 0)
{
#region Приватные поля
/// <summary>
/// Длина (приватное)
/// </summary>
private int _pWidth;
private int _pWidth = width;
/// <summary>
/// Высота (приватное)
/// </summary>
private int _pHeight;
#endregion
#region Конструкторы
/// <summary>
/// Конструктор по умолчанию
/// </summary>
public TwoDimSize ()
{
Width = 0;
Height = 0;
}
/// <summary>
/// Конструктор
/// </summary>
/// <param name="width">Длина</param>
/// <param name="height">Высота</param>
public TwoDimSize (int width, int height)
{
Width = width;
Height = height;
}
private int _pHeight = height;
#endregion
#region Свойства