Support of scala.compiletime.deferred
Hi! Do you have any plans to add support to the Scala 3 feature called Deferred Givens? Basically, this is equivalent to the abstract given, that must be implemented in the concrete implementation of the base trait. Right now IDE don't support it well. Let's say I have the base trait like that:trait MyTrait[T]: given codec: Codec[T] = scala.compiletime.deferred
Now if I will try to implement it my concrete class:class MyClass extends MyTrait[Something]
I will face two issues:
1. If I try to implement (CTRL+i) all missing methods, the IDE will ignore the given codec, since it looks like it's already implemented in the base class (it has something after the equal sign)
2. If I know in advance that I need to implement it, I can try to override it, but the IDE will change it to def and lose the signature (which is important for givens) like that:class MyClass extends MyTrait[Something]: override def codec = super.codec
So the only way to work with them is to manually copy-paste them from base class and adjust accordingly to the concrete class.
Please sign in to leave a comment.
Hello!
I noticed that you also created this YouTrack ticket
https://youtrack.jetbrains.com/issue/SCL-24721
In order to avoid communication duplication, let's move the discussion to the YouTrack ticket
(which is the primary place where we track issues/features/improvements)
Yes, sure. My bad. Sorry for confusion.