public override bool Equals(object obj) { var type = obj as ArrayType; if (type == null) { return(false); } var equals = QualifiedType.Equals(type.QualifiedType) && SizeType.Equals(type.SizeType); if (SizeType == ArraySize.Constant) { equals &= Size.Equals(type.Size); } return(equals); }