public bool Equals(BaseEnumState?other) { if (ReferenceEquals(null, other)) { return(false); } if (ReferenceEquals(this, other)) { return(true); } return(TypeFullyQualified == other.TypeFullyQualified && _type.IsReferenceType.Equals(other._type.IsReferenceType) && InnerTypesInfo.Equals(other.InnerTypesInfo) && Settings.Equals(other.Settings) && ConstructorArguments.EqualsTo(other.ConstructorArguments) && Items.EqualsTo(other.Items)); }