Mod

dotty.tools.dotc.ast.untpd$.Mod
See theMod companion object
sealed abstract class Mod(val flags: FlagSet)(implicit src: SourceFile) extends Positioned

Mod is intended to record syntactic information about modifiers, it's NOT a replacement of FlagSet.

For any query about semantic information, check flags instead.

Attributes

Companion
object
Graph
Supertypes
class Positioned
trait Cloneable
trait Product
trait Equals
trait SrcPos
class Object
trait Matchable
class Any
Show all
Known subtypes
class Abstract
class Erased
class Final
class Given
class Implicit
class Impure
class Infix
class Inline
class Lazy
class Opaque
class Open
class Override
class Private
class Protected
class Sealed
class Transparent
class Var
Show all

Members list

Value members

Inherited methods

def canEqual(that: Any): Boolean

Attributes

Inherited from:
Equals
def checkPos(nonOverlapping: Boolean)(using Context): Unit

Check that all positioned items in this tree satisfy the following conditions:

Check that all positioned items in this tree satisfy the following conditions:

  • Parent spans contain child spans
  • If item is a non-empty tree, it has a position

Attributes

Inherited from:
Positioned
def cloneIn(src: SourceFile): Positioned.this.type

Clone this node but assign it a fresh id which marks it as a node in file.

Clone this node but assign it a fresh id which marks it as a node in file.

Attributes

Inherited from:
Positioned

Attributes

Inherited from:
Positioned
def endPos(using ctx: Context): SourcePosition

Attributes

Inherited from:
SrcPos
def envelope(src: SourceFile, startSpan: Span): Span

The union of startSpan and the spans of all positioned children that have the same source as this node, except that Inlined nodes only consider their call child.

The union of startSpan and the spans of all positioned children that have the same source as this node, except that Inlined nodes only consider their call child.

Side effect: Any descendants without spans have but with the same source as this node have their span set to the end position of the envelope of all children to the left, or, if that one does not exist, to the start position of the envelope of all children to the right.

Attributes

Inherited from:
Positioned
def focus(using ctx: Context): SourcePosition

Attributes

Inherited from:
SrcPos
def line(using ctx: Context): Int

Attributes

Inherited from:
SrcPos

Attributes

Inherited from:
Product
def productElement(n: Int): Any

Attributes

Inherited from:
Product

Attributes

Inherited from:
Product

Attributes

Inherited from:
Product

Attributes

Inherited from:
Product

Attributes

Inherited from:
Product

Attributes

Inherited from:
Positioned

Attributes

Inherited from:
Positioned
def span: Span

The span part of the item's position

The span part of the item's position

Attributes

Inherited from:
Positioned
def span_=(span: Span): Unit

Attributes

Inherited from:
Positioned
final def srcPos: SrcPos

This positioned item, widened to SrcPos. Used to make clear we only need the position, typically for error reporting.

This positioned item, widened to SrcPos. Used to make clear we only need the position, typically for error reporting.

Attributes

Inherited from:
Positioned
def startPos(using ctx: Context): SourcePosition

Attributes

Inherited from:
SrcPos
def uniqueId: Int

A unique identifier in case -Yshow-tree-ids, or -Ydebug-tree-with-id is set, -1 otherwise.

A unique identifier in case -Yshow-tree-ids, or -Ydebug-tree-with-id is set, -1 otherwise.

Attributes

Inherited from:
Positioned
def withSpan(span: Span): Positioned.this.type

A positioned item like this one with given span. If the positioned item is source-derived, a clone is returned. If the positioned item is synthetic, the position is updated destructively and the item itself is returned.

A positioned item like this one with given span. If the positioned item is source-derived, a clone is returned. If the positioned item is synthetic, the position is updated destructively and the item itself is returned.

Attributes

Inherited from:
Positioned

Concrete fields

val flags: FlagSet