Класс представляет собой таблицу пользовательских функций. Позволяет добавлять, удалять и выполнять функцию по строковому имени.
void insert | ( | const std::wstring & | name, | |
const Function & | f | |||
) | [inline] |
Добавить пользовательскую функцию.
Метод добавляет в таблицу новую пользовательскую функцию f с именем name. Если имя функции некорректно или функция с таким именем уже существует, то будет сгенерировано исключение.
[in] | name | Имя пользовательской функции |
[in] | f | Пользовательская функция |
omni::calc::InvalidFunctionName | Если имя функции не является корректным или функция с таким именем уже существует |
void remove | ( | const std::wstring & | name | ) | [inline] |
Удалить пользовательскую функцию.
Метод удаляет из таблицы пользовательскую функцию с именем name.
[in] | name | Имя пользовательской функции |
omni::calc::InvalidFunctionName | Если функции с таким именем не существует |
bool exists | ( | const std::wstring & | name | ) | const [inline] |
Проверить задана ли пользовательская функция.
Метод проверяет наличие в таблице функции с именем name.
[in] | name | Имя пользовательской функции |
T operator() | ( | const std::wstring & | name, | |
T | arg | |||
) | const [inline] |
Выполнить пользовательскую функцию.
Метод выполняет пользовательскую функцию с именем name. Если функции с заданным именем нет в таблице, будет сгенерировано исключение.
[in] | name | Имя пользовательской функции |
[in] | arg | Аргумент пользовательской функции |
omni::calc::UnknownFunctionCall | Если функции с заданным именем нет в таблице |