コード例 #1
0
		internal void AddQName(QNameIndex qnameIndex, QNameArray mapQNames)
		{
			int index;
			if (mapQNames.TryAddQName(qnameIndex, out index))
			{
				// value was added

				int prefixIndex = 0;
				int namespaceIndex = 0;
				int localNameIndex = 0;

				if (!string.IsNullOrEmpty(qnameIndex.Qname.Prefix))
				{
					if (!FindPrefixNameIndex(qnameIndex.Qname.Prefix, out prefixIndex))
						AddPrefixName(qnameIndex.Qname.Prefix);
				}

				if (!string.IsNullOrEmpty(qnameIndex.Qname.Ns))
				{
					if (!FindNamespaceNameIndex(qnameIndex.Qname.Ns, out namespaceIndex))
						AddNamespaceName(qnameIndex.Qname.Ns);
				}

				if (!FindLocalNameIndex(qnameIndex.Qname.LocalName, out localNameIndex))
					AddLocalName(qnameIndex.Qname.LocalName);
			}
		}
コード例 #2
0
		private void Init()
		{
			_attributeNamesMap = new QNameArray();
			_attributeValuesMap = new Dictionary<string, int>();
			_elementNamesMap = new QNameArray();
			_contentCharacterChunksMap = new Dictionary<string, int>();
			_localNamesMap = new Dictionary<string, int>();
			_namespaceNamesMap = new Dictionary<string, int>();
			_prefixNamesMap = new Dictionary<string, int>();
			_otherNCNamesMap = new Dictionary<string, int>();
			_otherStringMap = new Dictionary<string, int>();

			// add default prefix and namespace
			_prefixNamesMap.Add(FIConsts.FI_DEFAULT_PREFIX, 1);
			_namespaceNamesMap.Add(FIConsts.FI_DEFAULT_NAMESPACE, 1);
		}
コード例 #3
0
		internal FIWriterVocabulary(FIWriterVocabulary vocab)
		{
			// copy constructor
			_encodingAlgorithmManager = vocab._encodingAlgorithmManager;
			_restrictedAlphabetManager = vocab._restrictedAlphabetManager;

			_attributeNamesMap = new QNameArray(vocab._attributeNamesMap);
			_attributeValuesMap = new Dictionary<string,int>(vocab._attributeValuesMap);
			_elementNamesMap = new QNameArray(vocab._elementNamesMap);
			_contentCharacterChunksMap = new Dictionary<string,int>(vocab._contentCharacterChunksMap);
			_localNamesMap = new Dictionary<string,int>(vocab._localNamesMap);
			_namespaceNamesMap = new Dictionary<string,int>(vocab._namespaceNamesMap);
			_prefixNamesMap = new Dictionary<string,int>(vocab._prefixNamesMap);
			_otherNCNamesMap = new Dictionary<string, int>(vocab._otherNCNamesMap);
			_otherStringMap = new Dictionary<string, int>(vocab._otherStringMap);

			_uri = vocab._uri;
			_stringEncoding = vocab._stringEncoding;
		}
コード例 #4
0
 internal QNameArray(QNameArray qnameArray)
 {
     _lastIndex = qnameArray._lastIndex;
     _nameQNameIndexLookupMap = qnameArray._nameQNameIndexLookupMap;
 }