NameOps

dotty.tools.dotc.core.NameOps
object NameOps

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Self type
NameOps.type

Members list

Type members

Classlikes

object compactify

Attributes

Supertypes
class Object
trait Matchable
class Any
Self type
compactify.type

Extensions

Extensions

extension [N <: Name](name: N)
def adjustIfModuleClass(flags: FlagSet): N

If flags is a ModuleClass but not a Package, add module class suffix

If flags is a ModuleClass but not a Package, add module class suffix

Attributes

If name length exceeds allowable limit, replace part of it by hash

If name length exceeds allowable limit, replace part of it by hash

Attributes

def errorName: N
def expandedName(base: Symbol, kind: QualifiedNameKind)(using Context): N

The expanded name. This is the fully qualified name of base with ExpandPrefixName as separator, followed by kind and the name.

The expanded name. This is the fully qualified name of base with ExpandPrefixName as separator, followed by kind and the name.

Attributes

def freshened(using Context): N
def functionArity(using Context): Int

The name of the generic runtime operation corresponding to an array operation

The name of the generic runtime operation corresponding to an array operation

Attributes

def isFunction(using Context): Boolean

Is a function name, i.e one of FunctionXXL, FunctionN, ContextFunctionN, ImpureFunctionN, ImpureContextFunctionN for N >= 0

Is a function name, i.e one of FunctionXXL, FunctionN, ContextFunctionN, ImpureFunctionN, ImpureContextFunctionN for N >= 0

Attributes

is this the name of an object enclosing package-level definitions?

is this the name of an object enclosing package-level definitions?

Attributes

Is a function name

Is a function name

  • FunctionN for N >= 0

Attributes

def isSpecializedNameOf(base: N)(using Context): Boolean

Determines if the current name is the specialized name of the given base name. For example typeName("Tuple2$mcII$sp").isSpecializedNameOf(tpnme.Tuple2) == true

Determines if the current name is the specialized name of the given base name. For example typeName("Tuple2$mcII$sp").isSpecializedNameOf(tpnme.Tuple2) == true

Attributes

Is a synthetic function name, i.e. one of

Is a synthetic function name, i.e. one of

  • FunctionN for N > 22
  • ContextFunctionN for N >= 0

Attributes

is this the name of an object enclosing top-level definitions?

is this the name of an object enclosing top-level definitions?

Attributes

Is name of a variable pattern?

Is name of a variable pattern?

Attributes

Do two target names match? An empty target name matchws any other name.

Do two target names match? An empty target name matchws any other name.

Attributes

Convert this module name to corresponding module class name

Convert this module name to corresponding module class name

Attributes

The name of the primitive runtime operation corresponding to an array operation

The name of the primitive runtime operation corresponding to an array operation

Attributes

Convert this module class name to corresponding source module name

Convert this module class name to corresponding source module name

Attributes

def specializedFor(classTargs: List[Type], classTargsNames: List[Name], methodTargs: List[Type], methodTarsNames: List[Name])(using Context): N

This method is to be used on type parameters from a class, since this method does sorting based on their names

This method is to be used on type parameters from a class, since this method does sorting based on their names

Attributes

def specializedFunction(ret: Type, args: List[Type])(using Context): N

Use for specializing function names ONLY and use it if you are not creating specialized name from type parameters. The order of names will be:

Use for specializing function names ONLY and use it if you are not creating specialized name from type parameters. The order of names will be:

<return type><first type><second type><...>

Attributes

def specializedName(args: List[Type])(using Context): N

Returns the name of the class specialised to the provided types, in the given order. Used for the specialized tuple classes.

Returns the name of the class specialised to the provided types, in the given order. Used for the specialized tuple classes.

Attributes

If name ends in module class suffix, drop it. This method needs to work on mangled as well as unmangled names because it is also called from the backend.

If name ends in module class suffix, drop it. This method needs to work on mangled as well as unmangled names because it is also called from the backend.

Attributes

Revert the expanded name.

Revert the expanded name.

Attributes

def unmangle(kind: NameKind): N
def unmangle(kinds: List[NameKind]): N
extension (name: TermName)

If this is a super accessor name, its underlying name, which is the name of the method that the super accessor forwards to.

If this is a super accessor name, its underlying name, which is the name of the method that the super accessor forwards to.

Attributes

The name unary_x for a prefix operator x

The name unary_x for a prefix operator x

Attributes