﻿namespace Kirby
{
	public class GivenSatisfier
	{
		private bool IsSatisfied(IGiven given)
		{
			return false;
		}

		public void Satisfy(IGiven given, IGiven parentGiven = null)
		{
			if (IsSatisfied(given))
			{
				return;
			}

			foreach (var precondition in given.Preconditions)
			{
				Satisfy(precondition, parentGiven: given);
			}
		}
	}
}