Carries information necessary to expand the host tree.
At times we need to store this info, because macro expansion can be delayed until its targs are inferred.
After a macro application has been successfully expanded, this attachment is destroyed.

Value Members

final def!=(arg0: Any): Boolean

Definition Classes

AnyRef → Any

final def##(): Int

Definition Classes

AnyRef → Any

def+(other: String): String

Implicit information

This member is added by an implicit conversion from StdAttachments to
any2stringadd[StdAttachments] performed by method any2stringadd in scala.Predef.

final def==(arg0: Any): Boolean

Since mkInvoke, the applyDynamic/selectDynamic/etc desugarer, is disconnected
from typedNamedApply, the applyDynamicNamed argument rewriter, the latter
doesn’t know whether it needs to apply the rewriting because the application
has just been desugared or it needs to hold on because it’s already performed
a desugaring on this tree.

After macro expansion is completed, links the expandee and the expansion result by annotating them both with a MacroExpansionAttachment.

After macro expansion is completed, links the expandee and the expansion result by annotating them both with a MacroExpansionAttachment.
The expanded parameter is of type Any, because macros can expand both into trees and into annotations.

Marks the tree as a macro impl reference, which is a naked reference to a method.

Marks the tree as a macro impl reference, which is a naked reference to a method.

This is necessary for typechecking macro impl references (see DefaultMacroCompiler.defaultResolveMacroImpl),
because otherwise typing a naked reference will result in the "follow this method with _' if you want to
treat it as a partially applied function" errors.

This mark suppresses adapt except for when the annottee is a macro application.

final defsynchronized[T0](arg0: ⇒ T0): T0

deftoString(): String

Unmarks the tree as a macro impl reference (see markMacroImplRef for more information).

Unmarks the tree as a macro impl reference (see markMacroImplRef for more information).

This is necessary when a tree that was previously deemed to be a macro impl reference,
typechecks to be a macro application. Then we need to unmark it, expand it and try to treat
its expansion as a macro impl reference.