File tree Expand file tree Collapse file tree 2 files changed +10
-6
lines changed
scaladoc/src/dotty/tools/scaladoc Expand file tree Collapse file tree 2 files changed +10
-6
lines changed Original file line number Diff line number Diff line change @@ -10,7 +10,7 @@ object Inkuire {
1010 db = db.copy(
1111 functions = db.functions.sortBy(_.hashCode),
1212 types = db.types.toSeq.sortBy(_._1.uuid).toMap,
13- implicitConversions = db.implicitConversions.sortBy(_._1.uuid )
13+ implicitConversions = db.implicitConversions.sortBy(_._1.hashCode )
1414 )
1515 }
1616
@@ -37,7 +37,7 @@ object Inkuire {
3737 case class InkuireDb (
3838 functions : Seq [ExternalSignature ],
3939 types : Map [ITID , (Type , Seq [Type ])],
40- implicitConversions : Seq [(ITID , Type )],
40+ implicitConversions : Seq [(TypeLike , Type )],
4141 typeAliases : Map [ITID , TypeLike ]
4242 )
4343
@@ -163,7 +163,7 @@ object Inkuire {
163163 )
164164 }
165165
166- private def serializeConversion (conversion : (ITID , Type )): JSON = {
166+ private def serializeConversion (conversion : (TypeLike , Type )): JSON = {
167167 jsonList(
168168 Seq (
169169 serialize(conversion._1),
Original file line number Diff line number Diff line change @@ -138,12 +138,16 @@ trait InkuireSupport:
138138
139139 private def handleImplicitConversion (implicitConversion : Symbol , variableNames : Set [String ]) = {
140140 val defdef = implicitConversion.tree.asInstanceOf [DefDef ]
141- val to = defdef.returnTpt.asInkuire(variableNames)
141+ val methodVars = defdef.paramss.flatMap(_.params).collect {
142+ case TypeDef (name, _) => name
143+ }
144+ val vars = variableNames ++ methodVars
145+ val to = defdef.returnTpt.asInkuire(vars)
142146 val from = defdef.paramss.flatMap(_.params).collectFirst {
143- case v : ValDef => v.tpt.asInkuire(variableNames )
147+ case v : ValDef => v.tpt.asInkuire(vars )
144148 }
145149 (from, to) match
146- case (Some (from : Inkuire . Type ), to : Inkuire .Type ) => Inkuire .db = Inkuire .db.copy(implicitConversions = Inkuire .db.implicitConversions :+ (from.itid.get -> to))
150+ case (Some (from), to : Inkuire .Type ) => Inkuire .db = Inkuire .db.copy(implicitConversions = Inkuire .db.implicitConversions :+ (from -> to))
147151 case _ =>
148152 }
149153
You can’t perform that action at this time.
0 commit comments