Container

trait Container extends LinkSource

A trait for objects that can contain attachments

class Object
trait Matchable
class Any
class Tree[T]
class Block[T]
class XMLBlock
class CaseDef[T]
class DenotingTree[T]
trait DefTree[T]
class NamedDefTree[T]
class Bind[T]
class MemberDef[T]
class TypeDef[T]
class ValOrDefDef[T]
class DefDef[T]
class ValDef[T]
class EmptyValDef[T]
trait ValOrTypeDef[T]
class ModuleDef
class Template[T]
class Export[T]
class Import[T]
class NameTree[T]
class Labeled[T]
class RefTree[T]
class Ident[T]
object EmptyTypeIdent.type
class Select[T]
class SelectWithSig[T]
class This[T]
class TypeTree[T]
class Hole[T]
class Inlined[T]
class Literal[T]
class NamedArg[T]
class New[T]
trait PatternTree[T]
class Alternative[T]
class UnApply[T]
class ProxyTree[T]
class Annotated[T]
class GenericApply[T]
class Apply[T]
class TypeApply[T]
class PackageDef[T]
class Super[T]
class Typed[T]
class Parens
class SeqLiteral[T]
trait TermTree[T]
class Assign[T]
class Closure[T]
class If[T]
class InlineIf[T]
class Match[T]
class InlineMatch[T]
class Return[T]
class Try[T]
class WhileDo[T]
class Thicket[T]
class EmptyTree[T]
trait TypTree[T]
class MatchTypeTree[T]
class Function
class GenAlias
class GenFrom
class MacroTree
class OpTree
class InfixOp
class PostfixOp
class PrefixOp
class Tuple

Value members

Concrete methods

final def pushAttachment[V](key: Key[V], value: V)(using ctx: Context): Unit
def withAttachment[V](key: Key[V], value: V): Container
final def withAttachmentsFrom(container: Container): Container

Copy the sticky attachments from container to this container.

Copy the sticky attachments from container to this container.

Inherited methods

final def allAttachments: List[(Key[_], Any)]

The list of all keys and values attached to this container.

The list of all keys and values attached to this container.

Inherited from:
LinkSource
final def attachment[V](key: Key[V]): V

The attachment corresponding to key.

The attachment corresponding to key.

Throws:
NoSuchElementException

if no attachment with key exists

Inherited from:
LinkSource
final def attachmentOrElse[V](key: Key[V], default: V): V

The attachment corresponding to key, or default if no attachment with key exists.

The attachment corresponding to key, or default if no attachment with key exists.

Inherited from:
LinkSource
final def getAttachment[V](key: Key[V]): Option[V]

Optionally get attachment corresponding to key

Optionally get attachment corresponding to key

Inherited from:
LinkSource
final def hasAttachment[V](key: Key[V]): Boolean

Does an attachment corresponding to key exist?

Does an attachment corresponding to key exist?

Inherited from:
LinkSource
final def putAttachment[V](key: Key[V], value: V): Option[V]

Add attachment with given key and value.

Add attachment with given key and value.

Returns:

Optionally, the old attachment with given key if one existed before. The new attachment is added at the position of the old one, or at the end if no attachment with same key existed.

Inherited from:
LinkSource
final def removeAttachment[V](key: Key[V]): Option[V]

Remove attachment with given key, if it exists.

Remove attachment with given key, if it exists.

Returns:

Optionally, the removed attachment with given key if one existed before.

Inherited from:
LinkSource