Перейти к основному содержимому

Тип

Стд::Тип<ТипЗначения>

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

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

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

Базовые типы: Объект, Представляемое


Литералы

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


Свойства

БазовыеТипы

ТолькоЧтение

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

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

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

ПараметрыТипа

ТолькоЧтение

Набор параметров типа для обобщенных типов. Для простых типов массив всегда пуст.

Примеры

знч ПараметрыТипаДляСоответствия = Тип<Соответствие<Строка|Число, Булево|ДатаВремя>>

Переменная ПараметрыТипаДляСоответствия будет содержать массив из 2 элементов типа Множество, по числу параметров типа Соответствие Множество 1 (параметр типа "Ключ") будет содержать 2 элемента:

  • Строка
  • Число

Множество 2 (параметр типа "Значение") будет содержать 2 элемента:

  • Булево
  • ДатаВремя

Методы

ВСтроку

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

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


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

МожетБытьПрисвоенВ(Тип: ЧитаемаяКоллекция<Тип>|Тип): Булево
Проверяет, может ли значение текущего типа быть присвоено в переменную типа Тип (или массива типов для составного типа).

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

ПоИмени

<ValueType это Перечисление> ПоИмени(Имя: Строка): ТипЗначения
Возвращает элемент типа-перечисления по его имени.

Исключения

ИсключениеНедопустимыйАргумент - если элемента перечисления с таким именем не существует.

Примеры

Динамическое получение элемента перечисления по полному имени типа перечисления и имени элемента

Тип<НаправлениеСортировки>.ПоИмени("ПоВозрастанию")

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

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

Примеры

null


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

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

Исключения

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


ПолучитьЭкземпляр

<ValueType это Одиночка> ПолучитьЭкземпляр(): ТипЗначения
Возвращает экземпляр типа Одиночка.


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

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

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


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

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

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

Исключения

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

Примеры

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

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

возврат Объект
;

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

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

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

Исключения

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

Примеры

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

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

Элементы

<ValueType это Перечисление> Элементы(): Массив<ТипЗначения>
Возвращает массив элементов типа-перечисления в порядке объявления.


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

Объект

ПолучитьТип