using System; using System.Globalization; namespace Oni.Metadata { internal class MetaArray : MetaType { private readonly MetaType elementType; private readonly int count; public MetaArray(MetaType elementType, int count) { this.elementType = elementType; this.count = count; Name = string.Format(CultureInfo.InvariantCulture, "{0}[{1}]", elementType.Name, count); Size = elementType.Size * count; } public MetaType ElementType => elementType; public int Count => count; protected override bool IsLeafImpl() => elementType.IsLeaf; public override void Accept(IMetaTypeVisitor visitor) => visitor.VisitArray(this); } }