@@ -156,7 +156,7 @@ class ReflectionCompilerInterface(val rootContext: core.Contexts.Context) extend
156
156
if (self.symbol.is(core.Flags .JavaDefined )) Nil // FIXME should also support java packages
157
157
else self.symbol.info.decls.iterator.map(definitionFromSym).toList
158
158
159
- def PackageDef_symbol (self : PackageDef )(given Context ): PackageDefSymbol = self.symbol
159
+ def PackageDef_symbol (self : PackageDef )(given Context ): Symbol = self.symbol
160
160
161
161
type ClassDef = tpd.TypeDef
162
162
@@ -170,7 +170,7 @@ class ReflectionCompilerInterface(val rootContext: core.Contexts.Context) extend
170
170
def ClassDef_derived (self : ClassDef )(given Context ): List [TypeTree ] = ClassDef_rhs (self).derived.asInstanceOf [List [TypeTree ]]
171
171
def ClassDef_self (self : ClassDef )(given Context ): Option [ValDef ] = optional(ClassDef_rhs (self).self)
172
172
def ClassDef_body (self : ClassDef )(given Context ): List [Statement ] = ClassDef_rhs (self).body
173
- def ClassDef_symbol (self : ClassDef )(given Context ): ClassDefSymbol = self.symbol.asClass
173
+ def ClassDef_symbol (self : ClassDef )(given Context ): Symbol = self.symbol.asClass
174
174
private def ClassDef_rhs (self : ClassDef ) = self.rhs.asInstanceOf [tpd.Template ]
175
175
176
176
def ClassDef_copy (original : ClassDef )(name : String , constr : DefDef , parents : List [Term | TypeTree ], derived : List [TypeTree ], selfOpt : Option [ValDef ], body : List [Statement ])(given Context ): ClassDef = {
@@ -186,9 +186,9 @@ class ReflectionCompilerInterface(val rootContext: core.Contexts.Context) extend
186
186
}
187
187
188
188
def TypeDef_rhs (self : TypeDef )(given Context ): TypeTree | TypeBoundsTree = self.rhs
189
- def TypeDef_symbol (self : TypeDef )(given Context ): TypeDefSymbol = self.symbol.asType
189
+ def TypeDef_symbol (self : TypeDef )(given Context ): Symbol = self.symbol.asType
190
190
191
- def TypeDef_apply (symbol : TypeDefSymbol )(given Context ): TypeDef = withDefaultPos(tpd.TypeDef (symbol))
191
+ def TypeDef_apply (symbol : Symbol )(given Context ): TypeDef = withDefaultPos(tpd.TypeDef (symbol.asType ))
192
192
def TypeDef_copy (original : TypeDef )(name : String , rhs : TypeTree | TypeBoundsTree )(given Context ): TypeDef =
193
193
tpd.cpy.TypeDef (original)(name.toTypeName, rhs)
194
194
@@ -203,10 +203,10 @@ class ReflectionCompilerInterface(val rootContext: core.Contexts.Context) extend
203
203
def DefDef_paramss (self : DefDef )(given Context ): List [List [ValDef ]] = self.vparamss
204
204
def DefDef_returnTpt (self : DefDef )(given Context ): TypeTree = self.tpt
205
205
def DefDef_rhs (self : DefDef )(given Context ): Option [Tree ] = optional(self.rhs)
206
- def DefDef_symbol (self : DefDef )(given Context ): DefDefSymbol = self.symbol.asTerm
206
+ def DefDef_symbol (self : DefDef )(given Context ): Symbol = self.symbol.asTerm
207
207
208
- def DefDef_apply (symbol : DefDefSymbol , rhsFn : List [Type ] => List [List [Term ]] => Option [Term ])(given Context ): DefDef =
209
- withDefaultPos(tpd.polyDefDef(symbol, tparams => vparamss => rhsFn(tparams)(vparamss).getOrElse(tpd.EmptyTree )))
208
+ def DefDef_apply (symbol : Symbol , rhsFn : List [Type ] => List [List [Term ]] => Option [Term ])(given Context ): DefDef =
209
+ withDefaultPos(tpd.polyDefDef(symbol.asTerm , tparams => vparamss => rhsFn(tparams)(vparamss).getOrElse(tpd.EmptyTree )))
210
210
211
211
def DefDef_copy (original : DefDef )(name : String , typeParams : List [TypeDef ], paramss : List [List [ValDef ]], tpt : TypeTree , rhs : Option [Term ])(given Context ): DefDef =
212
212
tpd.cpy.DefDef (original)(name.toTermName, typeParams, paramss, tpt, rhs.getOrElse(tpd.EmptyTree ))
@@ -220,10 +220,10 @@ class ReflectionCompilerInterface(val rootContext: core.Contexts.Context) extend
220
220
221
221
def ValDef_tpt (self : ValDef )(given Context ): TypeTree = self.tpt
222
222
def ValDef_rhs (self : ValDef )(given Context ): Option [Tree ] = optional(self.rhs)
223
- def ValDef_symbol (self : ValDef )(given Context ): ValDefSymbol = self.symbol.asTerm
223
+ def ValDef_symbol (self : ValDef )(given Context ): Symbol = self.symbol.asTerm
224
224
225
- def ValDef_apply (symbol : ValDefSymbol , rhs : Option [Term ])(given Context ): ValDef =
226
- tpd.ValDef (symbol, rhs.getOrElse(tpd.EmptyTree ))
225
+ def ValDef_apply (symbol : Symbol , rhs : Option [Term ])(given Context ): ValDef =
226
+ tpd.ValDef (symbol.asTerm , rhs.getOrElse(tpd.EmptyTree ))
227
227
228
228
def ValDef_copy (original : ValDef )(name : String , tpt : TypeTree , rhs : Option [Term ])(given Context ): ValDef =
229
229
tpd.cpy.ValDef (original)(name.toTermName, tpt, rhs.getOrElse(tpd.EmptyTree ))
@@ -319,8 +319,8 @@ class ReflectionCompilerInterface(val rootContext: core.Contexts.Context) extend
319
319
320
320
def This_id (self : This )(given Context ): Option [Id ] = optional(self.qual)
321
321
322
- def This_apply (cls : ClassDefSymbol )(given Context ): This =
323
- withDefaultPos(tpd.This (cls))
322
+ def This_apply (cls : Symbol )(given Context ): This =
323
+ withDefaultPos(tpd.This (cls.asClass ))
324
324
325
325
def This_copy (original : Tree )(qual : Option [Id ])(given Context ): This =
326
326
tpd.cpy.This (original)(qual.getOrElse(untpd.EmptyTypeIdent ))
@@ -1088,7 +1088,7 @@ class ReflectionCompilerInterface(val rootContext: core.Contexts.Context) extend
1088
1088
1089
1089
def Type_simplified (self : Type )(given Context ): Type = self.simplified
1090
1090
1091
- def Type_classSymbol (self : Type )(given Context ): Option [ClassDefSymbol ] =
1091
+ def Type_classSymbol (self : Type )(given Context ): Option [Symbol ] =
1092
1092
if (self.classSymbol.exists) Some (self.classSymbol.asClass) else None
1093
1093
1094
1094
def Type_typeSymbol (self : Type )(given Context ): Symbol = self.typeSymbol
@@ -1100,7 +1100,7 @@ class ReflectionCompilerInterface(val rootContext: core.Contexts.Context) extend
1100
1100
def Type_memberType (self : Type )(member : Symbol )(given Context ): Type =
1101
1101
member.info.asSeenFrom(self, member.owner)
1102
1102
1103
- def Type_derivesFrom (self : Type )(cls : ClassDefSymbol )(given Context ): Boolean =
1103
+ def Type_derivesFrom (self : Type )(cls : Symbol )(given Context ): Boolean =
1104
1104
self.derivesFrom(cls)
1105
1105
1106
1106
def Type_isFunctionType (self : Type )(given Context ): Boolean =
@@ -1516,17 +1516,11 @@ class ReflectionCompilerInterface(val rootContext: core.Contexts.Context) extend
1516
1516
def Symbol_isAbstractType (self : Symbol )(given Context ): Boolean = self.isAbstractType
1517
1517
def Symbol_isClassConstructor (self : Symbol )(given Context ): Boolean = self.isClassConstructor
1518
1518
1519
- type PackageDefSymbol = core.Symbols .Symbol
1520
-
1521
1519
def isPackageDefSymbol (symbol : Symbol )(given Context ): Boolean =
1522
1520
symbol.is(core.Flags .Package )
1523
1521
1524
- type TypeSymbol = core.Symbols .TypeSymbol
1525
-
1526
1522
def isTypeSymbol (symbol : Symbol )(given Context ): Boolean = symbol.isType
1527
1523
1528
- type ClassDefSymbol = core.Symbols .ClassSymbol
1529
-
1530
1524
def isClassDefSymbol (symbol : Symbol )(given Context ): Boolean = symbol.isClass
1531
1525
1532
1526
def Symbol_fields (self : Symbol )(given Context ): List [Symbol ] =
@@ -1537,68 +1531,58 @@ class ReflectionCompilerInterface(val rootContext: core.Contexts.Context) extend
1537
1531
if (isField(sym)) sym else core.Symbols .NoSymbol
1538
1532
}
1539
1533
1540
- def Symbol_classMethod (self : Symbol )(name : String )(given Context ): List [DefDefSymbol ] =
1534
+ def Symbol_classMethod (self : Symbol )(name : String )(given Context ): List [Symbol ] =
1541
1535
self.typeRef.decls.iterator.collect {
1542
1536
case sym if isMethod(sym) && sym.name.toString == name => sym.asTerm
1543
1537
}.toList
1544
1538
1545
- def Symbol_classMethods (self : Symbol )(given Context ): List [DefDefSymbol ] =
1539
+ def Symbol_classMethods (self : Symbol )(given Context ): List [Symbol ] =
1546
1540
self.typeRef.decls.iterator.collect {
1547
1541
case sym if isMethod(sym) => sym.asTerm
1548
1542
}.toList
1549
1543
1550
1544
private def appliedTypeRef (sym : Symbol ): Type = sym.typeRef.appliedTo(sym.typeParams.map(_.typeRef))
1551
1545
1552
- def Symbol_method (self : Symbol )(name : String )(given Context ): List [DefDefSymbol ] =
1546
+ def Symbol_method (self : Symbol )(name : String )(given Context ): List [Symbol ] =
1553
1547
appliedTypeRef(self).allMembers.iterator.map(_.symbol).collect {
1554
1548
case sym if isMethod(sym) && sym.name.toString == name => sym.asTerm
1555
1549
}.toList
1556
1550
1557
- def Symbol_methods (self : Symbol )(given Context ): List [DefDefSymbol ] =
1551
+ def Symbol_methods (self : Symbol )(given Context ): List [Symbol ] =
1558
1552
appliedTypeRef(self).allMembers.iterator.map(_.symbol).collect {
1559
1553
case sym if isMethod(sym) => sym.asTerm
1560
1554
}.toList
1561
1555
1562
1556
private def isMethod (sym : Symbol )(given Context ): Boolean =
1563
1557
sym.isTerm && sym.is(Flags .Method ) && ! sym.isConstructor
1564
1558
1565
- def Symbol_caseFields (self : Symbol )(given Context ): List [ValDefSymbol ] =
1559
+ def Symbol_caseFields (self : Symbol )(given Context ): List [Symbol ] =
1566
1560
if (! self.isClass) Nil
1567
1561
else self.asClass.paramAccessors.collect {
1568
1562
case sym if sym.is(Flags .CaseAccessor ) => sym.asTerm
1569
1563
}
1570
1564
1571
1565
private def isField (sym : Symbol )(given Context ): Boolean = sym.isTerm && ! sym.is(Flags .Method )
1572
1566
1573
- def Symbol_of (fullName : String )(given ctx : Context ): ClassDefSymbol = ctx.requiredClass(fullName)
1574
-
1575
- type TypeDefSymbol = core.Symbols .TypeSymbol
1567
+ def Symbol_of (fullName : String )(given ctx : Context ): Symbol = ctx.requiredClass(fullName)
1576
1568
1577
1569
def isTypeDefSymbol (symbol : Symbol )(given Context ): Boolean =
1578
1570
symbol.isType && ! symbol.is(core.Flags .Case )
1579
1571
1580
1572
def Symbol_isTypeParam (self : Symbol )(given Context ): Boolean =
1581
1573
self.isTypeParam
1582
1574
1583
- type TypeBindSymbol = core.Symbols .TypeSymbol
1584
-
1585
1575
def isTypeBindSymbol (symbol : Symbol )(given Context ): Boolean =
1586
1576
symbol.isType && symbol.is(core.Flags .Case )
1587
1577
1588
- type TermSymbol = core.Symbols .TermSymbol
1589
-
1590
1578
def isTermSymbol (symbol : Symbol )(given Context ): Boolean = symbol.isTerm
1591
1579
1592
- type DefDefSymbol = core.Symbols .TermSymbol
1593
-
1594
1580
def isDefDefSymbol (symbol : Symbol )(given Context ): Boolean =
1595
1581
symbol.isTerm && symbol.is(core.Flags .Method )
1596
1582
1597
1583
def Symbol_signature (self : Symbol )(given Context ): Signature =
1598
1584
self.signature
1599
1585
1600
- type ValDefSymbol = core.Symbols .TermSymbol
1601
-
1602
1586
def isValDefSymbol (symbol : Symbol )(given Context ): Boolean =
1603
1587
symbol.isTerm && ! symbol.is(core.Flags .Method ) && ! symbol.is(core.Flags .Case )
1604
1588
@@ -1608,14 +1592,10 @@ class ReflectionCompilerInterface(val rootContext: core.Contexts.Context) extend
1608
1592
1609
1593
def Symbol_companionModule (self : Symbol )(given Context ): Symbol = self.companionModule
1610
1594
1611
- type BindSymbol = core.Symbols .TermSymbol
1612
-
1613
1595
def isBindSymbol (symbol : Symbol )(given Context ): Boolean =
1614
1596
symbol.isTerm && symbol.is(core.Flags .Case )
1615
1597
1616
- type NoSymbol = core.Symbols .NoSymbol .type
1617
-
1618
- def Symbol_noSymbol (given ctx : Context ): NoSymbol = core.Symbols .NoSymbol
1598
+ def Symbol_noSymbol (given ctx : Context ): Symbol = core.Symbols .NoSymbol
1619
1599
1620
1600
def isNoSymbol (symbol : Symbol )(given Context ): Boolean = symbol eq core.Symbols .NoSymbol
1621
1601
@@ -1762,7 +1742,7 @@ class ReflectionCompilerInterface(val rootContext: core.Contexts.Context) extend
1762
1742
def Definitions_Array_length : Symbol = defn.Array_length .asTerm
1763
1743
def Definitions_Array_update : Symbol = defn.Array_update .asTerm
1764
1744
1765
- def Definitions_RepeatedParamClass : ClassDefSymbol = defn.RepeatedParamClass
1745
+ def Definitions_RepeatedParamClass : Symbol = defn.RepeatedParamClass
1766
1746
1767
1747
def Definitions_OptionClass : Symbol = defn.OptionClass
1768
1748
def Definitions_NoneModule : Symbol = defn.NoneModule
0 commit comments