.libv1> builtins.merge
test1: Nat -> Nat
test1 n = n + n
.libv1> builtins.merge
test1: Nat -> Nat
test1 n = n + n
package sttp.tapir.examples | |
import cats.effect.{ExitCode, IO, IOApp} | |
import org.http4s.HttpRoutes | |
import org.http4s.blaze.server.BlazeServerBuilder | |
import org.http4s.server.Router | |
import sttp.model.{Part, StatusCode} | |
import sttp.model.headers.WWWAuthenticateChallenge | |
import sttp.tapir._ | |
import sttp.tapir.generic.auto._ |
package sttp.tapir.examples | |
import akka.actor.ActorSystem | |
import akka.http.scaladsl.Http | |
import akka.http.scaladsl.server.Route | |
import scala.concurrent.{Await, Future} | |
import scala.concurrent.duration._ | |
import scala.io.StdIn |
// TestMacro.scala | |
import scala.quoted.* | |
object TestMacro { | |
inline def name[E](e: E): String = ${ nameImpl[E]('e) } | |
def nameImpl[E: Type](e: Expr[E])(using Quotes): Expr[String] = { | |
import quotes.reflect.* |
object UsingIO: | |
trait Connection | |
trait User | |
case class IO[-R, +A](): | |
def *>[R1 <: R, B](that: => IO[R1, B]): IO[R1, B] = IO() | |
def foo(): IO[Connection, Unit] = IO() | |
def bar(): IO[User, Unit] = IO() |
opaque type NonEmptyString = String | |
object NonEmptyString: | |
def apply(s: String): Option[NonEmptyString] = | |
if s.isEmpty then None else Some(s) |
"pool-48-thread-5" #225 prio=5 os_prio=31 cpu=172535.04ms elapsed=180.55s tid=0x00007fd765e3d800 nid=0xdd0b runnable [0x0000700019eb4000] | |
java.lang.Thread.State: RUNNABLE | |
at dotty.tools.dotc.core.Types$Type.classSymbol(Types.scala:488) | |
at dotty.tools.dotc.transform.patmat.SpaceEngine.canDecompose(Space.scala:649) | |
at dotty.tools.dotc.transform.patmat.SpaceLogic.simplify(Space.scala:147) | |
at dotty.tools.dotc.transform.patmat.SpaceLogic.simplify$(Space.scala:78) | |
at dotty.tools.dotc.transform.patmat.SpaceEngine.simplify(Space.scala:323) | |
at dotty.tools.dotc.transform.patmat.SpaceLogic.isSubspace(Space.scala:176) | |
at dotty.tools.dotc.transform.patmat.SpaceLogic.isSubspace$(Space.scala:78) | |
at dotty.tools.dotc.transform.patmat.SpaceEngine.isSubspace(Space.scala:323) |
package sttp.tapir.examples | |
import cats.effect._ | |
import cats.syntax.all._ | |
import org.http4s.HttpRoutes | |
import org.http4s.server.Router | |
import org.http4s.server.blaze.BlazeServerBuilder | |
import org.http4s.syntax.kleisli._ | |
import sttp.client3._ | |
import sttp.tapir._ |
trait TapirHandler extends RequestStreamHandler { | |
def endpoints: List[ServerEndpoint[_, _, _, Any, Identity]] | |
override def handleRequest(input: InputStream, output: OutputStream, | |
context: Context): Unit = { | |
val json = new String(input.readAllBytes(), UTF_8) | |
val writer = new BufferedWriter(new OutputStreamWriter(output, UTF_8)) | |
writer.write(handleRequest(json)) | |
writer.flush() | |
} |
asyncapi: 2.0.0 | |
info: | |
title: JSON echo | |
version: '1.0' | |
servers: | |
dev: | |
url: localhost:8080 | |
protocol: ws | |
channels: | |
/ping: |