Mercurial > pub > ImplabNet
view Implab.ServiceHost/Unity/ArrayTypeReference.cs @ 281:e0916ddc9950 v3 tip
code cleanup and refactoring
author | cin |
---|---|
date | Fri, 01 Jun 2018 21:35:24 +0300 |
parents | 6691aff01de1 |
children |
line wrap: on
line source
using System; using System.Text; namespace Implab.ServiceHost.Unity { public class ArrayTypeReference : TypeReference { public int Rank { get; private set; } public TypeReference ItemsType { get; private set; } public override string Name { get { return ItemsType.Name; } } public override string ClrName { get { return new StringBuilder() .Append(ItemsType.ClrName) .Append("[") .Append(',', Rank - 1) .Append("]") .ToString(); } } public override string Namespace { get { return ItemsType.Namespace; } } public override int GenericParametersCount { get { return 0; } } internal ArrayTypeReference(TypeReference itemsType, int rank) { ItemsType = itemsType; Rank = rank; } internal override void Visit(TypeResolutionContext visitor) { visitor.Visit(this); } override public string ToString() { return new StringBuilder() .Append(ItemsType.ToString()) .Append('[') .Append(',', Rank - 1) .Append(']') .ToString(); } } }