blob: 3d4cdc46ceb5f5cbb59f50a8dc1638ea27869fa3 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
package scala.reflect
package generic
import scala.reflect.NameTransformer
trait StdNames {
self: Universe =>
val nme: LibraryTermNames
val tpnme: LibraryTypeNames
def encode(str: String): TermName = newTermName(NameTransformer.encode(str))
implicit def stringToTermName(s: String): TermName = newTermName(s)
trait LibraryCommonNames {
type NameType <: Name
implicit def createNameType(name: String): NameType
val EMPTY: NameType = ""
val ANON_FUN_NAME: NameType = "$anonfun"
val EMPTY_PACKAGE_NAME: NameType = "<empty>"
val IMPORT: NameType = "<import>"
val MODULE_SUFFIX: NameType = "$module"
val ROOT: NameType = "<root>"
}
trait LibraryTermNames extends LibraryCommonNames {
val EXPAND_SEPARATOR_STRING = "$$"
val LOCAL_SUFFIX_STRING = " "
val ROOTPKG: NameType = "_root_"
/** The expanded name of `name' relative to this class `base` with given `separator`
*/
def expandedName(name: TermName, base: Symbol, separator: String = EXPAND_SEPARATOR_STRING): TermName =
newTermName(base.fullName('$') + separator + name)
def moduleVarName(name: TermName): TermName = newTermName("" + name + MODULE_SUFFIX)
}
trait LibraryTypeNames extends LibraryCommonNames {
val REFINE_CLASS_NAME: NameType = "<refinement>"
val ANON_CLASS_NAME: NameType = "$anon"
}
}
|