private static void DumpType(TypeMeta item, XmlWriter output) { var xArrayType = item as ArrayTypeMeta; if (xArrayType != null) { DumpArrayType(xArrayType, output); return; } var xPointerType = item as PointerTypeMeta; if (xPointerType != null) { DumpPointerType(xPointerType, output); return; } if (item.GetType() == typeof(TypeMeta)) { DumpTypeMeta(item, output); return; } throw new NotImplementedException("Type '" + item.GetType().FullName + "' not implemented"); }