public int CompareQNameType(QNameType type1, QNameType type2) { return (int)type1 - (int)type2; }
private XmlAttributeNode AddAttribute(QNameType qnameType, bool isAtomicValue) { int attributeIndex = _attributeCount; if (_attributeNodes == null) { _attributeNodes = new XmlAttributeNode[4]; } else if (_attributeNodes.Length == attributeIndex) { XmlAttributeNode[] newAttributeNodes = new XmlAttributeNode[attributeIndex * 2]; Array.Copy(_attributeNodes, 0, newAttributeNodes, 0, attributeIndex); _attributeNodes = newAttributeNodes; } XmlAttributeNode attributeNode = _attributeNodes[attributeIndex]; if (attributeNode == null) { attributeNode = new XmlAttributeNode(_bufferReader); _attributeNodes[attributeIndex] = attributeNode; } attributeNode.QNameType = qnameType; attributeNode.IsAtomicValue = isAtomicValue; attributeNode.AttributeText.QNameType = qnameType; attributeNode.AttributeText.IsAtomicValue = isAtomicValue; _attributeCount++; return attributeNode; }
protected XmlNode(XmlNodeType nodeType, PrefixHandle prefix, StringHandle localName, ValueHandle value, XmlNodeFlags nodeFlags, ReadState readState, XmlAttributeTextNode attributeTextNode, int depthDelta) { _nodeType = nodeType; _prefix = prefix; _localName = localName; _value = value; _ns = NamespaceManager.EmptyNamespace; _hasValue = ((nodeFlags & XmlNodeFlags.HasValue) != 0); _canGetAttribute = ((nodeFlags & XmlNodeFlags.CanGetAttribute) != 0); _canMoveToElement = ((nodeFlags & XmlNodeFlags.CanMoveToElement) != 0); _isAtomicValue = ((nodeFlags & XmlNodeFlags.AtomicValue) != 0); _skipValue = ((nodeFlags & XmlNodeFlags.SkipValue) != 0); _hasContent = ((nodeFlags & XmlNodeFlags.HasContent) != 0); _readState = readState; _attributeTextNode = attributeTextNode; _exitScope = (nodeType == XmlNodeType.EndElement); _depthDelta = depthDelta; _isEmptyElement = false; _quoteChar = '"'; _qnameType = QNameType.Normal; }