Main

object Main extends CommandIOApp
class CommandIOApp
trait IOApp
class Object
trait Matchable
class Any
Main.type

Value members

Concrete methods

def info(msg: String, verbose: Boolean): IO[Unit]
override def main: Opts[IO[ExitCode]]
Definition Classes
CommandIOApp

Inherited methods

final def main(args: Array[String]): Unit
Inherited from:
_$1.toLowerCase())).filterNot(((_$2:String)=>_$2.contains("windows"))).flatMap[String](((_$3:String)=>List.apply[String]("USR1","INFO"))) liveFiberSnapshotSignal.foreach[Unit](((name:String)=>Signal.handle(name,((_$4:)=>IOApp.this.runtime.fiberMonitor.liveFiberSnapshot(((_$5:String)=>System.err.print(_$5))))))) }else() valrt:Runtime=Runtime.getRuntime() valqueue:ArrayBlockingQueue[AnyRef]=newArrayBlockingQueue[AnyRef](1) valcounter:AtomicInteger=newAtomicInteger(1) valioa:IO[ExitCode]=IOApp.this.run(wrapRefArray[String](args).toList) valfiber:IOFiber[ExitCode]=ioa.unsafeRunFiber({ counter.decrementAndGet() queue.offer(newCancellationException("IOAppmainfiberwascanceled")) () },((t:Throwable)=>{ counter.decrementAndGet() queue.offer(t) () }),((a:ExitCode)=>{ counter.decrementAndGet() queue.offer(a) () }))(IOApp.this.runtime) if(isStackTracing){ IOApp.this.runtime.fiberMonitor.monitorSuspended(fiber) () }else() defhandleShutdown():Unit={ if(counter.compareAndSet(1,0)){ valcancelLatch:CountDownLatch=newCountDownLatch(1) fiber.cancel.unsafeRunAsync(((_$6:Either[Throwable,Unit])=>cancelLatch.countDown()))(IOApp.this.runtime) valtimeout:Duration=IOApp.this.runtimeConfig.shutdownHookTimeout if(timeout.isFinite){ blocking[Boolean](cancelLatch.await(timeout.length,timeout.unit)) () }elseblocking[Unit](cancelLatch.await()) }else() IOApp.this.runtime.shutdown.apply() } valhook:Thread=newThread((()=>handleShutdown())) hook.setName("io-cancel-hook") tryrt.addShutdownHook(hook)catch{ case_:IllegalStateException=> handleShutdown() } try{ valresult:Object=blocking[Object](queue.take()) resultmatch{ caseec:ExitCode=> IOApp.this.runtime.shutdown.apply() if(ec.==(ExitCode.Success))if(isForked.&&(NonDaemonThreadLogger.isEnabled()))newNonDaemonThreadLogger().start()else()elseif(isForked)System.exit(ec.code)else() casee:CancellationException=> if(isForked)System.exit(1)elsethrowe caseNonFatal(t)=> if(isForked){ `t₂`.printStackTrace() System.exit(1) }elsethrow`t₂` caset:Throwable=> `t₃`.printStackTrace() rt.halt(1) } }catch{ case_:InterruptedException=> hook.start() rt.removeShutdownHook(hook) Thread.currentThread().interrupt() } }">IOApp
final override def run(args: List[String]): IO[ExitCode]

The entry point for your application. Will be called by the runtime when the process is started. If the underlying runtime supports it, any arguments passed to the process will be made available in the args parameter. The numeric value within the resulting ExitCode will be used as the exit code when the process terminates unless terminated exceptionally or by interrupt.

The entry point for your application. Will be called by the runtime when the process is started. If the underlying runtime supports it, any arguments passed to the process will be made available in the args parameter. The numeric value within the resulting ExitCode will be used as the exit code when the process terminates unless terminated exceptionally or by interrupt.

Value parameters:
args

The arguments passed to the process, if supported by the underlying runtime. For example, java com.company.MyApp --foo --bar baz or node com-mycompany-fastopt.js --foo --bar baz would each result in List("--foo", "--bar", "baz").

See also:

IOApp.Simple!.run:cats\.effect\.IO[Unit]*

Definition Classes
CommandIOApp -> IOApp
Inherited from:
CommandIOApp

Concrete fields

lazy val mappingOpt: Opts[Path]
lazy val shapePathOpt: Opts[String]