private void EnsureState(RabbitMQDeliveryState value, RabbitMQDeliveryState expected)
 {
     if (CompareState(value, expected))
     {
         throw new UnexpectedDeliveryStateException(value);
     }
 }
 private bool CompareState(RabbitMQDeliveryState value, RabbitMQDeliveryState expected)
 => expected == value;
 public UnexpectedDeliveryStateException(RabbitMQDeliveryState deliveryState, string message)
     : base(message)
 {
     DeliveryState = deliveryState;
 }
 private RabbitMQDeliveryState TryExchangeDeliveryState(RabbitMQDeliveryState expected, RabbitMQDeliveryState value)
 => (RabbitMQDeliveryState)Interlocked.CompareExchange(ref rawDeliveryState, (int)value, (int)expected);
 public UnexpectedDeliveryStateException(RabbitMQDeliveryState state)
     : this(state, "The current delivery state is invalid for operation execution.")
 {
 }