Skip to content

Commit 3a41e63

Browse files
committed
Seal Logger* traits
1 parent 10bcfdd commit 3a41e63

File tree

3 files changed

+7
-3
lines changed

3 files changed

+7
-3
lines changed

core/logs/src/main/scala/org/typelevel/otel4s/logs/Logger.scala

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ import org.typelevel.otel4s.meta.InstrumentMeta
2727
* the `Logger` is intended to be used only for bridging logs from other log frameworks into OpenTelemetry and is
2828
* '''NOT a replacement''' for logging API.
2929
*/
30-
trait Logger[F[_], Ctx] {
30+
sealed trait Logger[F[_], Ctx] {
3131

3232
/** The instrument's metadata. Indicates whether instrumentation is enabled.
3333
*/
@@ -51,6 +51,8 @@ trait Logger[F[_], Ctx] {
5151
}
5252

5353
object Logger {
54+
private[otel4s] trait Unsealed[F[_], Ctx] extends Logger[F, Ctx]
55+
5456
def apply[F[_], Ctx](implicit ev: Logger[F, Ctx]): Logger[F, Ctx] = ev
5557

5658
/** Creates a no-op implementation of the [[Logger]].

core/logs/src/main/scala/org/typelevel/otel4s/logs/LoggerBuilder.scala

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ import cats.syntax.functor._
2727
* @see
2828
* [[https://opentelemetry.io/docs/specs/otel/logs/api/#get-a-logger]]
2929
*/
30-
trait LoggerBuilder[F[_], Ctx] {
30+
sealed trait LoggerBuilder[F[_], Ctx] {
3131

3232
/** Assigns a version to the resulting Logger.
3333
*
@@ -54,6 +54,7 @@ trait LoggerBuilder[F[_], Ctx] {
5454
}
5555

5656
object LoggerBuilder {
57+
private[otel4s] trait Unsealed[F[_], Ctx] extends LoggerBuilder[F, Ctx]
5758

5859
/** Creates a no-op implementation of the [[LoggerBuilder]].
5960
*

core/logs/src/main/scala/org/typelevel/otel4s/logs/LoggerProvider.scala

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ import cats.syntax.functor._
2727
* @see
2828
* [[https://opentelemetry.io/docs/specs/otel/logs/api/#loggerprovider]]
2929
*/
30-
trait LoggerProvider[F[_], Ctx] {
30+
sealed trait LoggerProvider[F[_], Ctx] {
3131

3232
/** Creates a named [[Logger]].
3333
*
@@ -69,6 +69,7 @@ trait LoggerProvider[F[_], Ctx] {
6969
}
7070

7171
object LoggerProvider {
72+
private[otel4s] trait Unsealed[F[_], Ctx] extends LoggerProvider[F, Ctx]
7273

7374
def apply[F[_], Ctx](implicit ev: LoggerProvider[F, Ctx]): LoggerProvider[F, Ctx] = ev
7475

0 commit comments

Comments
 (0)