diff --git a/syntax/shared/src/main/scala/chester/syntax/core/interface/Term.scala b/syntax/shared/src/main/scala/chester/syntax/core/interface/Term.scala index c58afb64..945cf7ee 100644 --- a/syntax/shared/src/main/scala/chester/syntax/core/interface/Term.scala +++ b/syntax/shared/src/main/scala/chester/syntax/core/interface/Term.scala @@ -6,7 +6,7 @@ import chester.doc.const.{ColorProfile, Docs} import chester.error.* import chester.syntax.* import chester.syntax.core.orm.* -import chester.syntax.core.simple.{ObjectStmtTerm, TelescopeTermF} +import chester.syntax.core.simple.{ObjectStmtTerm} import chester.uniqid.* import chester.utils.* import chester.utils.doc.* @@ -956,3 +956,12 @@ trait ObjectTypeTermC[Term <: TermT[Term]] extends TypeTermT[Term] { cpy(objectDef = g(objectDef)) ) } + +@FunctionalInterface +trait TelescopeTermF[Term <: TermT[Term], ThisTree <: TelescopeTermC[Term]] { + def newTelescope( + args: Vector[ArgTermC[Term]], + implicitly: Boolean, + meta: OptionTermMeta + ): ThisTree +} diff --git a/syntax/shared/src/main/scala/chester/syntax/core/simple.scala b/syntax/shared/src/main/scala/chester/syntax/core/simple.scala index e496af4e..9ac55919 100644 --- a/syntax/shared/src/main/scala/chester/syntax/core/simple.scala +++ b/syntax/shared/src/main/scala/chester/syntax/core/simple.scala @@ -514,15 +514,6 @@ object simple { def from(bind: LocalV): ArgTerm = ArgTerm(bind, bind.ty, meta = None) } - @FunctionalInterface - trait TelescopeTermF[Rec <: TermT[Rec], ThisTree <: TelescopeTermC[Rec]] { - def newTelescope( - args: Vector[ArgTermC[Rec]], - implicitly: Boolean, - meta: OptionTermMeta - ): ThisTree - } - object TelescopeTerm { @deprecated("meta") def from(x: ArgTerm*): TelescopeTerm = TelescopeTerm(x.toVector, meta = None) @@ -807,7 +798,7 @@ object simple { override type ThisTree <: ReferenceCall } - implicit def LocalVConversion[Rec <: TermT[Rec]](x: UniqidOf[LocalVC[Rec]]): UniqidOf[LocalV] = x.asInstanceOf[UniqidOf[LocalV]] + implicit def LocalVConversion[Term <: TermT[Term]](x: UniqidOf[LocalVC[Term]]): UniqidOf[LocalV] = x.asInstanceOf[UniqidOf[LocalV]] case class LocalV( name: Name, @@ -825,7 +816,7 @@ object simple { override def switchUniqId(r: UReplacer): LocalV = copy(uniqId = r(uniqId)) } - implicit def conversionTop[Rec <: TermT[Rec]](x: UniqidOf[ToplevelVC[Rec]]): UniqidOf[ToplevelV] = x.asInstanceOf[UniqidOf[ToplevelV]] + implicit def conversionTop[Term <: TermT[Term]](x: UniqidOf[ToplevelVC[Term]]): UniqidOf[ToplevelV] = x.asInstanceOf[UniqidOf[ToplevelV]] case class ToplevelV( id: AbsoluteRef,