public virtual void VisitArrayDimensionCollection(IArrayDimensionCollection value) { for (int i = 0; i < value.Count; i++) { this.VisitArrayDimension(value[i]); } }
public virtual void VisitArrayDimensionCollection(IArrayDimensionCollection value) { for (int i = 0; i < value.Count; i++) { VisitArrayDimension(value[i]); } }
public virtual IArrayDimensionCollection TransformArrayDimensionCollection(IArrayDimensionCollection value) { IArrayDimension[] array = new IArrayDimension[value.Count]; for (int i = 0; i < value.Count; i++) { array[i] = this.TransformArrayDimension(value[i]); } IArrayDimensionCollection target = new ArrayDimensionCollection(); target.AddRange(array); return target; }
private CArrayType(IType elem, IArrayDimensionCollection dim) { this.elem = elem; this.dim = dim; }
public static bool Compare(this IArrayDimensionCollection source, IArrayDimensionCollection n, Func<IArrayDimension, IArrayDimension, Action<string, string>, bool> checkitem, Action<string, string> errAct) { return Compare<IArrayDimension>(source,n,checkitem,errAct); }
public static bool Compare(this IArrayDimensionCollection source, IArrayDimensionCollection n, Func<IArrayDimension, IArrayDimension, bool> checkitem) { return Compare<IArrayDimension>(source,n,checkitem); }
public static bool Compare(this IArrayDimensionCollection source, IArrayDimensionCollection n) { return Compare<IArrayDimension>(source,n); }
private string GetTypeText(IType value) { ITypeReference typeReference = value as ITypeReference; if (typeReference != null) { string specialName = this.GetTypeSpecialNameText(typeReference); if ((specialName != null) && (specialName.Length > 0)) { return(specialName); } string typeReferenceText = this.GetTypeReferenceText(typeReference); return(typeReferenceText); } IPointerType pointerType = value as IPointerType; if (pointerType != null) { return(this.GetTypeText(pointerType.ElementType) + "*"); } IReferenceType referenceType = value as IReferenceType; if (referenceType != null) { return(this.GetTypeText(referenceType.ElementType) + "&"); } IArrayType arrayType = value as IArrayType; if (arrayType != null) { using (StringWriter writer = new StringWriter(CultureInfo.InvariantCulture)) { writer.Write(this.GetTypeText(arrayType.ElementType)); writer.Write("["); IArrayDimensionCollection dimensions = arrayType.Dimensions; for (int i = 0; i < dimensions.Count; i++) { if (i != 0) { writer.Write(","); } int lowerBound = dimensions[i].LowerBound; int upperBound = dimensions[i].UpperBound; if (lowerBound != -1) { writer.Write(lowerBound.ToString(CultureInfo.InvariantCulture)); } if ((lowerBound != -1) || (upperBound != -1)) { writer.Write(":"); } if (upperBound != -1) { writer.Write(upperBound.ToString(CultureInfo.InvariantCulture)); } } writer.Write("]"); return(writer.ToString()); } } IOptionalModifier optionalModifier = value as IOptionalModifier; if (optionalModifier != null) { return("{optional:" + this.GetTypeText(optionalModifier.Modifier) + "}" + this.GetTypeText(optionalModifier.ElementType)); } IRequiredModifier requiredModifier = value as IRequiredModifier; if (requiredModifier != null) { return("{required:" + this.GetTypeText(requiredModifier.Modifier) + "}" + this.GetTypeText(requiredModifier.ElementType)); } IFunctionPointer functionPointer = value as IFunctionPointer; if (functionPointer != null) { using (StringWriter writer = new StringWriter(CultureInfo.InvariantCulture)) { writer.Write("*"); writer.Write("("); for (int i = 0; i < functionPointer.Parameters.Count; i++) { if (i != 0) { writer.Write(","); } writer.Write(this.GetTypeText(functionPointer.Parameters[i].ParameterType)); } writer.Write(")"); writer.Write(":"); writer.Write(this.GetTypeText(functionPointer.ReturnType.Type)); return(writer.ToString()); } } IGenericParameter genericParameter = value as IGenericParameter; if (genericParameter != null) { return(genericParameter.Name); } IGenericArgument genericArgument = value as IGenericArgument; if (genericArgument != null) { ITypeReference genericType = genericArgument.Owner as ITypeReference; if (genericType != null) { return("<!" + genericArgument.Position.ToString(CultureInfo.InvariantCulture) + ">"); } IMethodReference genericMethod = genericArgument.Owner as IMethodReference; if (genericMethod != null) { return("<!!" + genericArgument.Position.ToString(CultureInfo.InvariantCulture) + ">"); } } throw new NotSupportedException("Invalid type in code identifier."); }
public static bool Compare(this IArrayDimensionCollection source, IArrayDimensionCollection n, Func <IArrayDimension, IArrayDimension, Action <string, string>, bool> checkitem, Action <string, string> errAct) { return(Compare <IArrayDimension>(source, n, checkitem, errAct)); }
public static bool Compare(this IArrayDimensionCollection source, IArrayDimensionCollection n, Func <IArrayDimension, IArrayDimension, bool> checkitem) { return(Compare <IArrayDimension>(source, n, checkitem)); }
public static bool Compare(this IArrayDimensionCollection source, IArrayDimensionCollection n) { return(Compare <IArrayDimension>(source, n)); }