Рефлектор / Reflector
Рефлектор предназначен для получения метаданных объектов во время выполнения. Как правило, рефлексия используется для проверки наличия у объекта определенных свойств/методов. В OneScript рефлексию можно применять для вызова методов объектов по именам методов.
Методы
ВызватьМетод / CallMethod()
Вызывает метод по его имени.
Параметры
target: Объект, метод которого нужно вызвать.
methodName: Имя метода для вызова
arguments: Массив аргументов, передаваемых методу. Следует учесть, что все параметры нужно передавать явно, в том числе необязательные.
Возвращаемое значение
Если вызывается функция, то возвращается ее результат. В противном случае возвращается Неопределено.
МетодСуществует / MethodExists()
Проверяет существование указанного метода у переданного объекта.
Параметры
target: Объект, из которого получаем таблицу методов.
methodName: Имя метода для вызова
Возвращаемое значение
Истина, если метод существует, и Ложь в обратном случае.
ПолучитьТаблицуМетодов / GetMethodsTable()
Получает таблицу методов для переданного объекта..
Параметры
- target: Объект, из которого получаем таблицу методов.
Возвращаемое значение
Таблица значений колонками: Имя, Количество, ЭтоФункция, Аннотации
ПолучитьТаблицуСвойств / GetPropertiesTable()
Получает таблицу свойств для переданного объекта..
Параметры
target: Объект, из которого получаем таблицу свойств.
withPrivate: Включая приватные
Возвращаемое значение
Таблица значений с колонками - Имя, Аннотации
ПолучитьСвойство / GetProperty()
Получает свойство по его имени.
Параметры
target: Объект, свойство которого необходимо установить.
prop: Имя свойства
Возвращаемое значение
Значение свойства
УстановитьСвойство / SetProperty()
Устанавливает свойство по его имени.
Параметры
target: Объект, свойство которого необходимо установить.
prop: Имя свойства
value: Значение свойства.
ИзвестныеТипы / KnownTypes()
Возвращает все известные типы
Параметры
- filter: Структура - Условия поиска. Ключ - имя колонки, значение - искомое значение
Возвращаемое значение
ТаблицаЗначений:
- Имя - Строка - Имя типа
- Значение - Тип - Тип
- Примитивный - Булево - Это примитивный тип
- Пользовательский - Булево - Это пользовательский типа
- Коллекция - Булево - Это коллекция