ZIOApp

An entry point for a ZIO application that allows sharing layers between applications. For a simpler version that uses the default ZIO environment see ZIOAppDefault.

Companion:
object
class Object
trait Matchable
class Any
class Proxy

Type members

Types

Value members

Abstract methods

A layer that manages the acquisition and release of services necessary for the application to run.

A layer that manages the acquisition and release of services necessary for the application to run.

def run: ZIO[Environment & ZIOAppArgs & Scope, Any, Any]

The main function of the application, which can access the command-line arguments through the args helper method of this class. If the provided effect fails for any reason, the cause will be logged, and the exit code of the application will be non-zero. Otherwise, the exit code of the application will be zero.

The main function of the application, which can access the command-line arguments through the args helper method of this class. If the provided effect fails for any reason, the cause will be logged, and the exit code of the application will be non-zero. Otherwise, the exit code of the application will be zero.

Concrete methods

final def <>(that: ZIOApp)(implicit trace: Trace): ZIOApp

Composes this ZIOApp with another ZIOApp, to yield an application that executes the logic of both applications.

Composes this ZIOApp with another ZIOApp, to yield an application that executes the logic of both applications.

final def exit(code: ExitCode)(implicit trace: Trace): UIO[Unit]

A helper function to exit the application with the specified exit code.

A helper function to exit the application with the specified exit code.

final def getArgs(implicit trace: Trace): ZIO[ZIOAppArgs, Nothing, Chunk[String]]

A helper function to obtain access to the command-line arguments of the application. You may use this helper function inside your run function.

A helper function to obtain access to the command-line arguments of the application. You may use this helper function inside your run function.

final def invoke(args: Chunk[String])(implicit trace: Trace): ZIO[Any, Any, Any]

Invokes the main app. Designed primarily for testing.

Invokes the main app. Designed primarily for testing.

def runtime: Runtime[Any]

Inherited methods

final def main(args0: Array[String]): Unit

The Scala main function, intended to be called only by the Scala runtime.

The Scala main function, intended to be called only by the Scala runtime.

Inherited from:
ZIOAppPlatformSpecific (hidden)

Implicits

Implicits

Inherited implicits

implicit inline def validateEnv[R1, R, E, A](inline zio: ZIO[R, E, A]): ZIO[R1, E, A]

This implicit conversion macro will ensure that the provided ZIO effect does not require more than the provided environment.

This implicit conversion macro will ensure that the provided ZIO effect does not require more than the provided environment.

If it is missing requirements, it will report a descriptive error message. Otherwise, the effect will be returned unmodified.

Inherited from:
ZIOAppVersionSpecific