using System.Collections.Generic;
namespace Chernobyl.Values
{
///
/// A basic implementation of an .
///
/// The type held by .
public class BasicContainer : HeldValue, IContainer
{
///
/// Initializes a new instance of the class.
///
public BasicContainer()
: this(default(T))
{ }
///
/// Initializes a new instance of the class.
///
/// The value held by this instance.
public BasicContainer(T value)
: this(value, EqualityComparer.Default)
{}
///
/// Initializes a new instance of the class.
///
/// The value held by this instance.
/// The instance used to compare new and previous
/// values of to determine if
/// should be raised.
public BasicContainer(T value, IEqualityComparer comparer)
: base(value, comparer)
{
IsReady = true;
}
///
/// The value held by this instance. If the value has not yet been
/// provided it will be equal to default(T).
///
public new T Value
{
get { return base.Value; }
protected set { base.Value = value; }
}
}
}