Example #1
0
 public int CompareQNameType(QNameType type1, QNameType type2)
 {
     return (int)type1 - (int)type2;
 }
Example #2
0
 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;
 }
Example #3
0
            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;
            }