internal static void AddType(ProjectDom dom, List <object> result, IReturnType returnType, IMember callingMember, bool showStatic) { if (returnType == null || returnType.FullName == "System.Void") { return; } if (returnType.ArrayDimensions > 0) { DomReturnType elementType = new DomReturnType(returnType.FullName); elementType.ArrayDimensions = returnType.ArrayDimensions - 1; for (int i = 0; i < elementType.ArrayDimensions; i++) { elementType.SetDimension(i, returnType.ArrayDimensions - 1); } elementType.PointerNestingLevel = returnType.PointerNestingLevel; AddType(dom, result, dom.GetArrayType(elementType), callingMember, showStatic); return; } IType type = dom.GetType(returnType); AddType(dom, result, type, callingMember, showStatic); }