public void Clear()
    {
        Reset();

        OptionEvaluators.Clear();

        _finalizationMethod = null;
        _resetMethod        = null;
    }
 IEnumerator IEnumerable.GetEnumerator()
 {
     return(OptionEvaluators.GetEnumerator());
 }
 IEnumerator <OptionEvaluator> IEnumerable <OptionEvaluator> .GetEnumerator()
 {
     return(OptionEvaluators.GetEnumerator());
 }
 public void RemoveEvaluator(OptionEvaluator evaluator)
 {
     OptionEvaluators.Remove(evaluator);
 }
    public void AddEvaluator(string optionName, EvaluationDelegate evaluationMethod, ExecutionDelegate executionMethod = null)
    {
        OptionEvaluator evaluator = new OptionEvaluator(optionName, evaluationMethod, executionMethod);

        OptionEvaluators.Add(evaluator);
    }
 public void AddEvaluator(OptionEvaluator evaluator)
 {
     OptionEvaluators.Add(evaluator);
 }
 public void AddEvaluators(IEnumerable <OptionEvaluator> evaluators)
 {
     OptionEvaluators.AddRange(evaluators);
 }