private CommonMethodParameterMetadata Read25_CommonMethodParameterMetadata(bool isNullable, bool checkType) { XmlQualifiedName type = checkType ? base.GetXsiType() : null; bool flag = false; if (isNullable) { flag = base.ReadNull(); } if ((checkType && (type != null)) && ((type.Name != this.id27_CommonMethodParameterMetadata) || (type.Namespace != this.id2_Item))) { if ((type.Name == this.id28_StaticMethodParameterMetadata) && (type.Namespace == this.id2_Item)) { return this.Read26_StaticMethodParameterMetadata(isNullable, false); } if ((type.Name != this.id30_Item) || (type.Namespace != this.id2_Item)) { throw base.CreateUnknownTypeException(type); } return this.Read24_Item(isNullable, false); } if (flag) { return null; } CommonMethodParameterMetadata o = new CommonMethodParameterMetadata(); bool[] flagArray = new bool[3]; while (base.Reader.MoveToNextAttribute()) { if ((!flagArray[1] && (base.Reader.LocalName == this.id87_ParameterName)) && (base.Reader.NamespaceURI == this.id4_Item)) { o.ParameterName = base.Reader.Value; flagArray[1] = true; } else { if ((!flagArray[2] && (base.Reader.LocalName == this.id88_DefaultValue)) && (base.Reader.NamespaceURI == this.id4_Item)) { o.DefaultValue = base.Reader.Value; flagArray[2] = true; continue; } if (!base.IsXmlnsAttribute(base.Reader.Name)) { base.UnknownNode(o, ":ParameterName, :DefaultValue"); } } } base.Reader.MoveToElement(); if (base.Reader.IsEmptyElement) { base.Reader.Skip(); return o; } base.Reader.ReadStartElement(); base.Reader.MoveToContent(); int whileIterations = 0; int readerCount = base.ReaderCount; while ((base.Reader.NodeType != XmlNodeType.EndElement) && (base.Reader.NodeType != XmlNodeType.None)) { if (base.Reader.NodeType == XmlNodeType.Element) { if ((!flagArray[0] && (base.Reader.LocalName == this.id89_Type)) && (base.Reader.NamespaceURI == this.id2_Item)) { o.Type = this.Read2_TypeMetadata(false, true); flagArray[0] = true; } else { base.UnknownNode(o, "http://schemas.microsoft.com/cmdlets-over-objects/2009/11:Type"); } } else { base.UnknownNode(o, "http://schemas.microsoft.com/cmdlets-over-objects/2009/11:Type"); } base.Reader.MoveToContent(); base.CheckReaderCount(ref whileIterations, ref readerCount); } base.ReadEndElement(); return o; }
private void Write25_CommonMethodParameterMetadata(string n, string ns, CommonMethodParameterMetadata o, bool isNullable, bool needType) { if (o == null) { if (isNullable) { base.WriteNullTagLiteral(n, ns); } } else { if (!needType) { Type type = o.GetType(); if (type != typeof(CommonMethodParameterMetadata)) { if (type == typeof(StaticMethodParameterMetadata)) { this.Write26_StaticMethodParameterMetadata(n, ns, (StaticMethodParameterMetadata) o, isNullable, true); return; } if (type != typeof(InstanceMethodParameterMetadata)) { throw base.CreateUnknownTypeException(o); } this.Write24_Item(n, ns, (InstanceMethodParameterMetadata) o, isNullable, true); return; } } base.WriteStartElement(n, ns, o, false, null); if (needType) { base.WriteXsiType("CommonMethodParameterMetadata", "http://schemas.microsoft.com/cmdlets-over-objects/2009/11"); } base.WriteAttribute("ParameterName", "", o.ParameterName); base.WriteAttribute("DefaultValue", "", o.DefaultValue); this.Write2_TypeMetadata("Type", "http://schemas.microsoft.com/cmdlets-over-objects/2009/11", o.Type, false, false); base.WriteEndElement(o); } }