Spec-Zone.ru › Scala 3.2

Класс DynamicVariable.DynamicVariable

Исходный код

class DynamicVariable[T](init: T)

DynamicVariables обеспечивает механизм связывания, где текущее значение находится через динамический контекст, но доступ к переменной сам по себе разрешается через статический контекст.

Текущее значение можно получить с помощью метода value. Новые значения должны быть установлены с помощью метода withValue. Значения, установленные через withValue, остаются действительными только до тех пор, пока выполняется второй аргумент withValue, безаргументная замыкание. По завершении второго аргумента переменная возвращается к предыдущему значению.

someDynamicVariable.withValue(newValue) {
  // ... code called in here that calls value ...
  // ... will be given back the newValue ...
}

Каждый поток получает свою собственную стек связываний. Когда создается новый поток, он получает копию стека связываний из родительского потока, и после этого связывания для нового потока независимы от связываний исходного потока.

Суперобоъекты
class Object
trait Сопоставимый
class Any

Конкретные методы

Исходный код
override def toString: String

Возвращает строковое представление объекта.

Представление по умолчанию зависит от платформы.

Возвращаемое значение

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

Классы определения Any

Исходный код
def value: T

Получение текущего значения

Исходный код
def value_=(newval: T): Unit

Изменение текущего связанного значения, отбрасывая старое значение. Обычно withValue() предоставляет лучшую семантику.

Исходный код
def withValue[S](newval: T)(thunk: => S): S

Установка значения переменной во время выполнения указанной замыкания.

Параметры значения
newval

Значение, на которое установить переменную

thunk

Код для вычисления при новом значении

© 2002-2022 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://scala-lang.org/api/3.2.0/scala/util/DynamicVariable.html

Spec-Zone.ru

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