Пример #1
0
        internal void AddXamlType(Int16 typeId, Int16 assemblyId, string typeName, TypeInfoFlags flags)
        {
            if (typeId < 0)
            {
                throw new ArgumentOutOfRangeException("typeId");
            }

            if (typeName == null)
            {
                throw new ArgumentNullException("typeName");
            }

            lock (_syncObject)
            {
                if (typeId == _bamlType.Count)
                {
                    BamlType type = new BamlType(assemblyId, typeName);
                    type.Flags = flags;
                    _bamlType.Add(type);
                }
                else if (typeId > _bamlType.Count)
                {
                    throw new ArgumentOutOfRangeException("typeId", SR.Get(SRID.TypeIdOutOfSequence, typeId));
                }
            }
            // Duplicate IDs (typeID < _bamlType.Count) are ignored
        }
Пример #2
0
        internal void AddXamlType(Int16 typeId, Int16 assemblyId, string typeName, TypeInfoFlags flags)
        {
            if (typeId < 0)
            {
                throw new ArgumentOutOfRangeException("typeId");
            }

            if (typeName == null)
            {
                throw new ArgumentNullException("typeName");
            }

            lock (_syncObject)
            {
                if (typeId == _bamlType.Count)
                {
                    BamlType type = new BamlType(assemblyId, typeName);
                    type.Flags = flags;
                    _bamlType.Add(type);
                }
                else if (typeId > _bamlType.Count)
                {
                    throw new ArgumentOutOfRangeException("typeId", SR.Get(SRID.TypeIdOutOfSequence, typeId));
                }
            }
            // Duplicate IDs (typeID < _bamlType.Count) are ignored
        }