Spec-Zone.ru › Dart 1

dart:core

Класс Expando

Класс Expando позволяет добавлять новые свойства к объектам.

Не работает с числами, строками, булевыми значениями или null.

Объект Expando не сохраняет добавленное значение свойства после того, как объект становится недоступным.

Поскольку вы всегда можете создать новое число, идентичное существующему, это означает, что свойство expando для числа никогда не сможет быть освобождено. Чтобы избежать этого, свойства expando не могут быть добавлены к числам. То же самое относится к строкам, булевым значениям и null, которые также имеют литералы, оцениваемые как идентичные значения, когда они встречаются более одного раза.

Нет ограничений для других классов, даже для объектов, являющихся константами во время компиляции. Будьте осторожны при добавлении свойств expando к константам во время компиляции, поскольку они будут существовать вечно.

Конструкторы

Expando([String name ])

Создаёт новый Expando. Необязательное имя используется только для отладки, и создание двух разных Expando с одинаковым именем создаёт два Expando, которые работают с различными свойствами объектов, к которым они применяются.

Свойства

name → String
final

Имя этого Expando, переданное в конструктор. Если в конструктор не было передано имя, имя равно null.

hashCode → int
read-only, inherited

Хеш-код этого объекта.

runtimeType → Type
read-only, inherited

Представление типа объекта во время выполнения.

Операторы

operator [](Object object) → T

Получает значение свойства этого Expando для данного объекта. Если объект не был расширен, метод возвращает null.

operator []=(Object object, T value) → void

Устанавливает значение свойства этого Expando для данного объекта. Свойства можно эффективно удалить, установив их значение в null.

operator ==(other) → bool
inherited

Оператор равенства.

Методы

toString() → String

Переопределённый метод toString для Expando.

noSuchMethod(Invocation invocation) → dynamic
inherited

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

© 2012 the Dart project authors
Licensed under the Creative Commons Attribution-ShareAlike License v4.0.
https://api.dartlang.org/stable/1.24.3/dart-core/Expando-class.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API