
public class Person : IEquatable<Person>
{
[CompilerGenerated]
protected virtual Type EqualityContract
{
[CompilerGenerated]
get
{
return typeof(Person);
}
}
public string Name { get; set/*init*/; }
public string Address { get; set/*init*/; }
public string Email { get; set/*init*/; }
public Person(string Name, string Address, string Email)
{
this.Name = Name;
this.Address = Address;
this.Email = Email;
base..ctor();
}
[CompilerGenerated]
public override string ToString()
{
StringBuilder stringBuilder = new StringBuilder();
stringBuilder.Append("Person");
stringBuilder.Append(" { ");
if (PrintMembers(stringBuilder))
{
stringBuilder.Append(' ');
}
stringBuilder.Append('}');
return stringBuilder.ToString();
}
[CompilerGenerated]
protected virtual bool PrintMembers(StringBuilder builder)
{
RuntimeHelpers.EnsureSufficientExecutionStack();
builder.Append("Name = ");
builder.Append((object?)Name);
builder.Append(", Address = ");
builder.Append((object?)Address);
builder.Append(", Email = ");
builder.Append((object?)Email);
return true;
}
[CompilerGenerated]
public static bool operator !=(Person? left, Person? right)
{
return !(left == right);
}
[CompilerGenerated]
public static bool operator ==(Person? left, Person? right)
{
return (object)left == right || (left?.Equals(right) ?? false);
}
[CompilerGenerated]
public override int GetHashCode()
{
return ((EqualityComparer<Type>.Default.GetHashCode(EqualityContract) * -1521134295 + EqualityComparer<string>.Default.GetHashCode(Name)) * -1521134295 + EqualityComparer<string>.Default.GetHashCode(Address)) * -1521134295 + EqualityComparer<string>.Default.GetHashCode(Email);
}
[CompilerGenerated]
public override bool Equals(object? obj)
{
return Equals(obj as Person);
}
[CompilerGenerated]
public virtual bool Equals(Person? other)
{
return (object)this == other || ((object)other != null && EqualityContract == other.EqualityContract && EqualityComparer<string>.Default.Equals(Name, other.Name) && EqualityComparer<string>.Default.Equals(Address, other.Address) && EqualityComparer<string>.Default.Equals(Email, other.Email));
}
[CompilerGenerated]
protected Person(Person original)
{
Name = original.Name;
Address = original.Address;
Email = original.Email;
}
[CompilerGenerated]
public void Deconstruct(out string Name, out string Address, out string Email)
{
Name = this.Name;
Address = this.Address;
Email = this.Email;
}
}
