public BasicProperty( IBasicProperty other, IListener listener, IPolicies policies, ICompilerMessageBuilder messageProvider, int propertyIndex) : base(other, listener, policies, messageProvider, propertyIndex) { messageProvider = messageProvider ?? new CompilerMessageBuilder(); this.PropertyTypeName = other.PropertyTypeName ?? typeof(object).FullName; if(false == policies.IsValidBasicPropertyTypeName(other.PropertyTypeName)) listener.Error(messageProvider.InvalidBasicPropertyTypeName(this.PropertyName, other.PropertyTypeName)); }