Exemplo n.º 1
0
        /// <summary>
        ///     Prevents a default instance of the <see cref="NameTableCache" /> class from being created.
        ///     Initialize name table and element name cache object array both containing the same object references.
        ///     The name table would be used in XmlReaderSettings and the elementNameCache object array
        ///     would be used with <see cref="NameTableCache.IsElement" /> to atomically compare element local names.
        /// </summary>
        private RDFNameTableCache()
        {
            this._nameTable = new RDFConcurrentNameTable();
            string[] elementNames = Enum.GetNames(typeof(RDFElementNameTable));
            string[] attributeNames = Enum.GetNames(typeof(RDFAttributeNameTable));
            this._elementNameCache = new object[elementNames.Length + attributeNames.Length];

            for (int i = 0; i < elementNames.Length; i++)
            {
                this._elementNameCache[i] = this._nameTable.Add(elementNames[i]);
            }

            int count = elementNames.Length;

            for (int i = 0; i < attributeNames.Length; i++)
            {
                this._elementNameCache[count++] = this._nameTable.Add(attributeNames[i]);
            }
        }
        /// <summary>
        ///     Prevents a default instance of the <see cref="NameTableCache" /> class from being created.
        ///     Initialize name table and element name cache object array both containing the same object references.
        ///     The name table would be used in XmlReaderSettings and the elementNameCache object array
        ///     would be used with <see cref="NameTableCache.IsElement" /> to atomically compare element local names.
        /// </summary>
        private RDFNameTableCache()
        {
            this._nameTable = new RDFConcurrentNameTable();
            string[] elementNames   = Enum.GetNames(typeof(RDFElementNameTable));
            string[] attributeNames = Enum.GetNames(typeof(RDFAttributeNameTable));
            this._elementNameCache = new object[elementNames.Length + attributeNames.Length];

            for (int i = 0; i < elementNames.Length; i++)
            {
                this._elementNameCache[i] = this._nameTable.Add(elementNames[i]);
            }

            int count = elementNames.Length;

            for (int i = 0; i < attributeNames.Length; i++)
            {
                this._elementNameCache[count++] = this._nameTable.Add(attributeNames[i]);
            }
        }