public override sealed void Call(Call action)
        {
            Function function;

            if (!_functions.TryGetValue(action.Name, out function))
                throw new ScriptException(String.Format(UILabels.FunctionNotFound, action.Name));

            _callingFunction = true;

            function.Visit(this);

            _callingFunction = false;
        }
 public virtual void Call(Call action)
 {
 }