Link Search Menu Expand Document

Тип

Стд::Тип<ValueType>
Базовые типы: Объект, Представляемое
Дочерние типы: ТипПеречисление

Иерархия типа

graph BT;
Тип&ltТипЗначения&gt-->Представляемое;
Представляемое-->Объект;

Характеристика значения, определяющая свойства, методы, поведение, которыми обладают значения данного типа.

Сравнение структурное.


Литералы

Синтаксис: Тип<ИмяТипа>


Свойства

БазовыеТипы

ТолькоЧтение БазовыеТипы: ЧитаемыйМассив<Тип>

Типы, являющиеся базовыми для текущего.

Тип<Число>.БазовыеТипы              // [Тип<Сравнимое<Число>>, Тип<Форматируемое>]
Тип<Сравнимое<Число>>.БазовыеТипы   // [Тип<Объект>]
Тип<Форматируемое>.БазовыеТипы      // [Тип<Представляемое>]
Тип<Представляемое>.БазовыеТипы     // [Тип<Объект>]

Методы

ВСтроку

ВСтроку(): Строка
Переопределение: ВСтроку

Возвращает полное имя типа (с пространством имен). Для стандартных типов - на английском языке. Пример: "Std::String".


МожетБытьПрисвоенВ

МожетБытьПрисвоенВ(Тип: ЧитаемаяКоллекция<Тип>|Тип): Булево

Проверяет, может ли значение текущего типа быть присвоено в переменную типа Тип (или массива типов для составного типа).

Тип<Число>.МожетБытьПрисвоенВ(Тип<Форматируемое>)                   // Истина
Тип<Число>.МожетБытьПрисвоенВ(Тип<Строка>)                          // Ложь
Тип<Массив<Число>>.МожетБытьПрисвоенВ(Массив<Объект>)               // Ложь
Тип<Массив<Число>>.МожетБытьПрисвоенВ(ЧитаемыйМассив<Объект>)       // Истина
Тип<Массив<Число>>.МожетБытьПрисвоенВ(ЧитаемаяКоллекция<Объект>)    // Истина

ПолучитьСвойства

Получить свойства типа данных в виде множества


ПолучитьСвойство

ПолучитьСвойство(Имя: Строка): ОтражениеСвойства

Получить свойство типа данных по имени.

Исключения

ИсключениеОтражения - не удалось найти свойство по имени


Представление

Представление(): Строка
Переопределение: Представление

Возвращает краткое имя типа (без пространства имен). Пример: "Строка".


СоздатьЭкземпляр

СоздатьЭкземпляр(Аргументы: ЧитаемыйМассив<Объект?>): ТипЗначения
Перегрузка:
СоздатьЭкземпляр(Аргументы: ЧитаемоеСоответствие<Строка, Объект?>): ТипЗначения

Создает экземпляр типа. Передача аргументов в конструктор выполняется в позиционной форме, в порядке объявления.

Исключения

ИсключениеОтражения - не удалось найти подходящий конструктор по сигнатуре параметров

Примеры

метод ЗагрузитьИзJson(ИмяТипа: Строка, ДанныеВJson: ЧитаемоеСоответствие<Строка, Объект?>): Объект?

    знч ТипОбъекта = НайтиТип(ИмяТипа)
    знч Объект = ТипОбъекта.СоздатьЭкземпляр([]) как неизвестно
    для СвойствоJson из ДанныеJson
        Объект[СвойствоJson.Ключ] = СвойствоJson.Значение
    ;
    
    возврат Объект
;

СоздатьЭкземпляр

СоздатьЭкземпляр(Аргументы: ЧитаемоеСоответствие<Строка, Объект?>): ТипЗначения
Перегрузка:
СоздатьЭкземпляр(Аргументы: ЧитаемыйМассив<Объект?>): ТипЗначения

Создает экземпляр типа. Передача аргументов в конструктор выполняется в именованной форме.

Исключения

ИсключениеОтражения - не удалось найти подходящий конструктор по сигнатуре параметров

Примеры

метод ЗагрузитьИзJson(ИмяТипа: Строка, ДанныеВJson: ЧитаемоеСоответствие<Строка, Объект?>): Объект?

    знч ТипОбъекта = НайтиТип(ИмяТипа)
    // Тут рассчитываем, что у типа есть конструктор с именами параметров, как в ключах соответствия
    возврат ТипОбъекта.СоздатьЭкземпляр(ДанныеВJson)
;

Список унаследованных методов

Объект