/// <summary>
 /// Deserialize the object from BinaryReader.
 /// </summary>
 public WhitespaceRule(XmlQueryDataReader reader) {
     // string localName;
     this.localName = reader.ReadStringQ();
     // string namespaceName;
     this.namespaceName = reader.ReadStringQ();
     // bool preserveSpace;
     this.preserveSpace = reader.ReadBoolean();
 }
 /// <summary>
 /// Deserialize the object from BinaryReader.
 /// </summary>
 internal XmlWriterSettings(XmlQueryDataReader reader) {
     // Encoding encoding;
     Encoding = Encoding.GetEncoding(reader.ReadInt32());
     // bool omitXmlDecl;
     OmitXmlDeclaration = reader.ReadBoolean();
     // NewLineHandling newLineHandling;
     NewLineHandling = (NewLineHandling)reader.ReadSByte(0, (sbyte)NewLineHandling.None);
     // string newLineChars;
     NewLineChars = reader.ReadStringQ();
     // TriState indent;
     IndentInternal = (TriState)reader.ReadSByte((sbyte)TriState.Unknown, (sbyte)TriState.True);
     // string indentChars;
     IndentChars = reader.ReadStringQ();
     // bool newLineOnAttributes;
     NewLineOnAttributes = reader.ReadBoolean();
     // bool closeOutput;
     CloseOutput = reader.ReadBoolean();
     // ConformanceLevel conformanceLevel;
     ConformanceLevel = (ConformanceLevel)reader.ReadSByte(0, (sbyte)ConformanceLevel.Document);
     // bool checkCharacters;
     CheckCharacters = reader.ReadBoolean();
     // XmlOutputMethod outputMethod;
     outputMethod = (XmlOutputMethod)reader.ReadSByte(0, (sbyte)XmlOutputMethod.AutoDetect);
     // List<XmlQualifiedName> cdataSections;
     int length = reader.ReadInt32();
     cdataSections = new List<XmlQualifiedName>(length);
     for (int idx = 0; idx < length; idx++) {
         cdataSections.Add(new XmlQualifiedName(reader.ReadString(), reader.ReadString()));
     }
     // bool mergeCDataSections;
     mergeCDataSections = reader.ReadBoolean();
     // string mediaType;
     mediaType = reader.ReadStringQ();
     // string docTypeSystem;
     docTypeSystem = reader.ReadStringQ();
     // string docTypePublic;
     docTypePublic = reader.ReadStringQ();
     // XmlStandalone standalone;
     Standalone = (XmlStandalone)reader.ReadSByte(0, (sbyte)XmlStandalone.No);
     // bool autoXmlDecl;
     autoXmlDecl = reader.ReadBoolean();
     // bool isReadOnly;
     ReadOnly = reader.ReadBoolean();
 }