it seems that `CoroutineScheduler` uses `require` ...
# announcements
a
it seems that
CoroutineScheduler
uses
require
that uses
contract
which is experimental
e
Contracts in stdlib (incl
require
) are a stable feature of Kotlin 1.3. Defining contracts for your own libraries is experimental.
However, we do use other experimental and internal features in implementation details of our libraries (where that would not affect their stable public API)
a
@elizarov so, Contracts are stable for internals usage, but not to external?
e
Yes. Contract specification language is not stable as well as some things related to evolution, compatibility, etc. It is easier for stdlib. Even if contracts get removed, their effect on stdlib functions will stay (it is a stable part of Kotlin language now)
👍 2