All Downloads are FREE. Search and download functionalities are using the official Maven repository.

io.taig.taigless.mailbox.Mailbox.scala Maven / Gradle / Ivy

There is a newer version: 0.15.0
Show newest version
package io.taig.taigless.mailbox

import cats.Applicative
import io.taig.taigless.mailbox.Mailbox.{Address, Message}

abstract class Mailbox[F[_]] {
  def send(recipient: Address, message: Message): F[Unit]
}

object Mailbox {
  final case class Address(email: String, name: Option[String])

  final case class Message(subject: String, content: String)

  def noop[F[_]](implicit F: Applicative[F]): Mailbox[F] = new Mailbox[F] {
    override def send(recipient: Address, message: Message): F[Unit] = F.unit
  }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy