Name

abstract class Name extends Designator with Showable

A name if either a term name or a type name. Term names can be simple or derived. A simple term name is essentially an interned string stored in a name table. A derived term name adds a tag, and possibly a number or a further simple name to some other name.

trait Showable
class Object
trait Matchable
class Any

Type members

Types

type ThisName <: Name

A type for names of the same kind as this name

A type for names of the same kind as this name

Value members

Abstract methods

This name downcasted to a simple term name

This name downcasted to a simple term name

This name downcasted to a term name

This name downcasted to a term name

This name downcasted to a type name

This name downcasted to a type name

def collect[T](f: PartialFunction[Name, T]): Option[T]

If partial function f is defined for some part of this name, apply it in a Some, otherwise None. Stops at derived names whose kind has definesNewName = true.

If partial function f is defined for some part of this name, apply it in a Some, otherwise None. Stops at derived names whose kind has definesNewName = true.

A string showing the internal structure of this name. By contrast, toString shows the name after conversion to a simple name.

A string showing the internal structure of this name. By contrast, toString shows the name after conversion to a simple name.

Replace operator expansions by corresponding operator symbols.

Replace operator expansions by corresponding operator symbols.

A derived name consisting of this name and the added info, unless it is already present in this name.

A derived name consisting of this name and the added info, unless it is already present in this name.

Replace operator symbols by corresponding operator expansions

Replace operator symbols by corresponding operator expansions

This name without any info of the given kind. Excepted, as always, is the underlying name part of a qualified name.

This name without any info of the given kind. Excepted, as always, is the underlying name part of a qualified name.

The first part of this (possible qualified) name

The first part of this (possible qualified) name

def is(kind: NameKind): Boolean

Does this name contain an info of the given kind? Excepted, as always, is the underlying name part of a qualified name.

Does this name contain an info of the given kind? Excepted, as always, is the underlying name part of a qualified name.

Is this name empty?

Is this name empty?

Is this name a term name?

Is this name a term name?

Is this name a type name?

Is this name a type name?

The last part of this (possible qualified) name

The last part of this (possible qualified) name

def likeSpaced(name: Name): ThisName

A name in the same (term or type) namespace as this name and with same characters as given name.

A name in the same (term or type) namespace as this name and with same characters as given name.

This name converted to a simple term name and in addition with all symbolic operator characters expanded.

This name converted to a simple term name and in addition with all symbolic operator characters expanded.

Convert to string after mangling

Convert to string after mangling

Apply f to last simple term name making up this name

Apply f to last simple term name making up this name

Apply f to all simple term names making up this name

Apply f to all simple term names making up this name

Apply rewrite rule given by f to some part of this name, skipping and rewrapping other decorators. Stops at derived names whose kind has definesNewName = true. If f does not apply to any part, return name unchanged.

Apply rewrite rule given by f to some part of this name, skipping and rewrapping other decorators. Stops at derived names whose kind has definesNewName = true. If f does not apply to any part, return name unchanged.

This name converted to a simple term name

This name converted to a simple term name

This name converted to a term name

This name converted to a term name

This name converted to a type name

This name converted to a type name

Concrete methods

def ++(other: Name): ThisName

Append other to the last part of this name

Append other to the last part of this name

def ++(other: String): ThisName

A derived name consisting of this name and the info of kind

A derived name consisting of this name and the info of kind

def endsWith(suffix: String): Boolean

Does (the last part of) this name end with str?

Does (the last part of) this name end with str?

def endsWith(suffix: SimpleName): Boolean
override def equals(that: Any): Boolean
Definition Classes
Any
override def hashCode: Int
Definition Classes
Any
def replace(from: Char, to: Char): ThisName

Replace all occurrences of from to to in this name

Replace all occurrences of from to to in this name

def startsWith(str: String, start: Int): Boolean

Does (the first part of) this name starting at index start starts with str?

Does (the first part of) this name starting at index start starts with str?

def toText(printer: Printer): Text

Convert name to text via printer.

Convert name to text via printer.

Inherited methods

def fallbackToText(printer: Printer): Text

A fallback text representation, if the pattern matching in Printers does not have a case for this showable element

A fallback text representation, if the pattern matching in Printers does not have a case for this showable element

Inherited from
Showable
def show(using Context): String

The string representation of this showable element.

The string representation of this showable element.

Inherited from
Showable
def showIndented(margin: Int)(using Context): String

The string representation with each line after the first one indented by the given given margin (in spaces).

The string representation with each line after the first one indented by the given given margin (in spaces).

Inherited from
Showable
def showSummary(depth: Int)(using Context): String

The summarized string representation of this showable element. Recursion depth is limited to some smallish value. Default is Config.summarizeDepth.

The summarized string representation of this showable element. Recursion depth is limited to some smallish value. Default is Config.summarizeDepth.

Inherited from
Showable