コード例 #1
0
		internal void ReReadClassMetadata(ClassMetadata clazz)
		{
			if (clazz != null)
			{
				ReReadClassMetadata(clazz._ancestor);
				clazz.ReadName(_systemTransaction);
				clazz.ForceRead();
				clazz.SetStateClean();
				clazz.BitFalse(Const4.CheckedChanges);
				clazz.BitFalse(Const4.Reading);
				clazz.BitFalse(Const4.Continue);
				clazz.BitFalse(Const4.Dead);
				clazz.CheckChanges();
			}
		}
コード例 #2
0
		public ClassMetadata ReadClassMetadata(ClassMetadata classMetadata, IReflectClass
			 clazz)
		{
			if (classMetadata == null)
			{
				throw new ArgumentNullException();
			}
			if (!classMetadata.StateUnread())
			{
				return classMetadata;
			}
			_classMetadataCreationDepth++;
			try
			{
				classMetadata.CreateConfigAndConstructor(_classMetadataByBytes, clazz);
				IReflectClass claxx = classMetadata.ClassReflector();
				if (claxx != null)
				{
					_classMetadataByClass.Put(claxx, classMetadata);
					classMetadata.ReadThis();
					classMetadata.CheckChanges();
					_initClassMetadataOnUp.Add(classMetadata);
				}
			}
			finally
			{
				_classMetadataCreationDepth--;
			}
			InitClassMetadataOnUp();
			return classMetadata;
		}