public StringBuilder VisitArray(InsArrayType type, StringBuilder builder) { type.ElementType.Apply(this, builder).Append('['); if (type.Rank == 1) { builder.Append('*'); } else { builder.Append(',', type.Rank - 1); } return(builder.Append(']')); }
public virtual InsType VisitArray(InsArrayType type, TArgument argument) { if (type == null) { throw new ArgumentNullException(nameof(type)); } var elementType = type.ElementType.Apply(this, argument); if (elementType == type.ElementType) { return(type); } return(new InsArrayType(elementType, type.Rank)); }
public InsAssembly?VisitArray(InsArrayType type, object argument) => type.ElementType.Apply(this, argument);