namespace BucketChain;
///
/// Represents a bucket used to transport water.
///
public sealed class Bucket
{
// TODO
///
/// Creates a new bucket with the given capacity.
///
/// Bucket capacity in liters
public Bucket(double capacityLiters)
{
// TODO
}
///
/// Gets if this bucket is currently completely empty or not.
///
public bool IsEmpty => false; // TODO
///
/// Fills the bucket to the brim if enough water is available.
/// If there is not enough water to fill the bucket completely it takes as much as possible.
/// If the bucket is already full no water is taken.
///
/// Max. available water, in liters
/// The amount taken for filling the bucket
public double Fill(double maxAvailable)
{
// TODO
return -1D;
}
///
/// Empties the bucket. The amount stored within before emptying is returned.
///
/// Amount emptied from the bucket, in liters
public double Empty()
{
// TODO
return -1D;
}
}