Exemplo n.º 1
0
 /// <summary>
 /// Visits and handles the effect.
 /// </summary>
 /// <param name="effect">Effect.</param>
 public void Visit(WhenEffect effect)
 {
     if (EvaluationManager.Evaluate(effect.Expression, Substitution, State))
     {
         foreach (var localEffect in effect.Effects)
         {
             localEffect.Accept(this);
         }
     }
 }
Exemplo n.º 2
0
 /// <summary>
 /// Evaluates the conditions with the given reference state and variable substitution.
 /// </summary>
 /// <param name="state">Reference state.</param>
 /// <param name="substitution">Substitution.</param>
 /// <returns>True if all conditions are met in the given state, false otherwise.</returns>
 public bool Evaluate(IState state, ISubstitution substitution = null)
 {
     return(EvaluationManager.Evaluate(this, substitution, state));
 }