in csharp/src/Drivers/Apache/Thrift/Service/Rpc/Thrift/TOpenSessionReq.cs [470:483]
public override bool Equals(object that)
{
if (!(that is TOpenSessionReq other)) return false;
if (ReferenceEquals(this, other)) return true;
return ((__isset.client_protocol == other.__isset.client_protocol) && ((!__isset.client_protocol) || (global::System.Object.Equals(Client_protocol, other.Client_protocol))))
&& ((__isset.@username == other.__isset.@username) && ((!__isset.@username) || (global::System.Object.Equals(Username, other.Username))))
&& ((__isset.@password == other.__isset.@password) && ((!__isset.@password) || (global::System.Object.Equals(Password, other.Password))))
&& ((__isset.@configuration == other.__isset.@configuration) && ((!__isset.@configuration) || (TCollections.Equals(Configuration, other.Configuration))))
&& ((__isset.getInfos == other.__isset.getInfos) && ((!__isset.getInfos) || (TCollections.Equals(GetInfos, other.GetInfos))))
&& ((__isset.client_protocol_i64 == other.__isset.client_protocol_i64) && ((!__isset.client_protocol_i64) || (global::System.Object.Equals(Client_protocol_i64, other.Client_protocol_i64))))
&& ((__isset.connectionProperties == other.__isset.connectionProperties) && ((!__isset.connectionProperties) || (TCollections.Equals(ConnectionProperties, other.ConnectionProperties))))
&& ((__isset.initialNamespace == other.__isset.initialNamespace) && ((!__isset.initialNamespace) || (global::System.Object.Equals(InitialNamespace, other.InitialNamespace))))
&& ((__isset.canUseMultipleCatalogs == other.__isset.canUseMultipleCatalogs) && ((!__isset.canUseMultipleCatalogs) || (global::System.Object.Equals(CanUseMultipleCatalogs, other.CanUseMultipleCatalogs))));
}