AspectSharp.Lang.Steps.Semantic.SemanticAnalizerStep.CheckIncludes C# (CSharp) Method

CheckIncludes() private method

private CheckIncludes ( AspectSharp.Lang.AST.MixinDefinitionCollection includes ) : void
includes AspectSharp.Lang.AST.MixinDefinitionCollection
return void
		private void CheckIncludes( MixinDefinitionCollection includes )
		{
			IDictionary names = new Hashtable();

			foreach( MixinDefinition type in includes )
			{
				AssertNotNull( type, type.TypeReference.ToString(), "Type name must be specified as as 'Typename in AssemblyName' or as a reference to a global type declared" );

				if (type.TypeReference.TargetType == TargetTypeEnum.Link)
				{
					AssertKeyExists( _globalMixins, type, type.TypeReference.LinkRef, "The referenced mixin is not declared in the global mixins section" );
				}

				AssertUnique( names, type, type.TypeReference.ToString(), "You shouldn't include the same mixin more than one time" );
			}
		}