34 lines
593 B
C#
34 lines
593 B
C#
using System;
|
|
using System.Linq;
|
|
|
|
namespace EvoCalculator.Core.Base.Columns;
|
|
|
|
public abstract class BaseColumn<T>
|
|
{
|
|
protected BaseColumn(int count)
|
|
{
|
|
Values = new T[count];
|
|
}
|
|
|
|
protected BaseColumn()
|
|
{
|
|
}
|
|
|
|
public T[] Values { get; set; }
|
|
|
|
public T GetValue(int i)
|
|
{
|
|
if (i < Values.Length) return Values[i];
|
|
|
|
return (T) Convert.ChangeType(0.0, typeof(T));
|
|
}
|
|
|
|
public T[] GetValues(int from = 0)
|
|
{
|
|
return from switch
|
|
{
|
|
0 => Values,
|
|
_ => Values.Skip(from).ToArray()
|
|
};
|
|
}
|
|
} |