trait ProxFS2[F[_]] extends Prox
- Alphabetic
- By Inheritance
- ProxFS2
- Prox
- SyntaxModule
- ProcessRunnerModule
- RedirectionModule
- ProcessGroupModule
- ProcessModule
- CommonModule
- ProxRuntime
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Type Members
- trait ProcessLikeConfiguration extends AnyRef
- Definition Classes
- CommonModule
- trait ProcessGroup[O, E] extends ProcessLike with Prox.ProcessGroupConfiguration[O, E]
Process group is two or more processes attached to each other
Process group is two or more processes attached to each other
This implements a pipeline of processes. The input of the first process and the output of the last process is redirectable with the RedirectableInput and RedirectableOutput traits. The processes are attached to each other's input/output streams, the pipe between them is customizable.
The error streams are also redirectable with the RedirectableErrors trait.
- O
Output type
- E
Error output type
- Definition Classes
- ProcessGroupModule
- trait ProcessGroupConfiguration[O, E] extends Prox.ProcessLikeConfiguration
- Definition Classes
- ProcessGroupModule
- trait ProcessGroupResult[+O, +E] extends AnyRef
Result of an executed process group
Result of an executed process group
- O
Output type
- E
Error output type
- Definition Classes
- ProcessGroupModule
- trait RunningProcessGroup[O, E, +Info] extends AnyRef
Representation of a running process group
Representation of a running process group
- O
Output type
- E
Error output type
- Info
Runner-specific per-process information type
- Definition Classes
- ProcessGroupModule
- case class SimpleProcessGroupResult[+O, +E](exitCodes: Map[Prox.Process[Unit, Unit], Prox.ProxExitCode], output: O, errors: Map[Prox.Process[Unit, Unit], E]) extends Prox.ProcessGroupResult[O, E] with Product with Serializable
Default implementation of ProcessGroupResult
Default implementation of ProcessGroupResult
- Definition Classes
- ProcessGroupModule
- trait Process[O, E] extends ProcessLike with Prox.ProcessConfiguration
Describes a system process to be executed
Describes a system process to be executed
This base trait is always extended with redirection and configuration capabilities represented by the traits ProcessConfiguration, RedirectableInput, RedirectableOutput and RedirectableError.
To create a process use the constructor in the companion object Process.apply.
The process specification not only encodes the process to be started but also how its input, output and error streams are redirected and executed. For this reason the effect type is also bound by the process, not just at execution time.
- O
Output type
- E
Error output type
- Definition Classes
- ProcessModule
- trait ProcessConfiguration extends Prox.ProcessLikeConfiguration
The capability to configure process execution details
The capability to configure process execution details
- Definition Classes
- ProcessModule
- trait ProcessResult[+O, +E] extends AnyRef
Result of a finished process
- trait RunningProcess[O, E, +Info] extends AnyRef
Representation of a running process
Representation of a running process
- O
Output type
- E
Error output type
- Info
Runner-specific process information
- Definition Classes
- ProcessModule
- case class SimpleProcessResult[+O, +E](exitCode: Prox.ProxExitCode, output: O, error: E) extends Prox.ProcessResult[O, E] with Product with Serializable
Default implementation of ProcessResult
Default implementation of ProcessResult
- Definition Classes
- ProcessModule
- class JVMProcessInfo extends AnyRef
- Definition Classes
- ProcessRunnerModule
- class JVMProcessRunner extends Prox.JVMProcessRunnerBase[Prox.JVMProcessInfo]
- Definition Classes
- ProcessRunnerModule
- abstract class JVMProcessRunnerBase[Info <: Prox.JVMProcessInfo] extends Prox.ProcessRunner[Info]
Default implementation of ProcessRunner using the Java process API
Default implementation of ProcessRunner using the Java process API
- Definition Classes
- ProcessRunnerModule
- class JVMRunningProcess[O, E, +Info <: Prox.JVMProcessInfo] extends Prox.RunningProcess[O, E, Info]
Default implementation of RunningProcess using the Java process API
Default implementation of RunningProcess using the Java process API
- Definition Classes
- ProcessRunnerModule
- class JVMRunningProcessGroup[O, E, +Info <: Prox.JVMProcessInfo] extends Prox.RunningProcessGroup[O, E, Info]
Default implementation of RunningProcessGroup using the Java process API
Default implementation of RunningProcessGroup using the Java process API
- Definition Classes
- ProcessRunnerModule
- trait ProcessRunner[Info] extends AnyRef
Interface for running processes and process groups
Interface for running processes and process groups
The default implementation is JVMProcessRunner
- Info
The type of information provided for a started process
- Definition Classes
- ProcessRunnerModule
- type ProxExitCode = ExitCode
- Definition Classes
- ProxFS2 → ProxRuntime
- type ProxFiber[A] = Fiber[F, Throwable, A]
- Definition Classes
- ProxFS2 → ProxRuntime
- type ProxIO[A] = F[A]
- Definition Classes
- ProxFS2 → ProxRuntime
- type ProxMonoid[A] = Monoid[A]
- Definition Classes
- ProxFS2 → ProxRuntime
- type ProxPipe[A, B] = (Stream[F, A]) => Stream[F, B]
- Definition Classes
- ProxFS2 → ProxRuntime
- type ProxResource[A] = Resource[F, A]
- Definition Classes
- ProxFS2 → ProxRuntime
- type ProxSink[A] = (Stream[F, A]) => Stream[F, Unit]
- Definition Classes
- ProxFS2 → ProxRuntime
- type ProxStream[A] = Stream[F, A]
- Definition Classes
- ProxFS2 → ProxRuntime
- implicit class FiberOps[A] extends AnyRef
- Attributes
- protected
- Definition Classes
- ProxRuntime
- implicit class IOOps[A] extends AnyRef
- Attributes
- protected
- Definition Classes
- ProxRuntime
- implicit class ListProxErrorOps extends AnyRef
- Attributes
- protected
- Definition Classes
- ProxRuntime
- implicit class MonoidStreamOps[A] extends AnyRef
- Attributes
- protected
- Definition Classes
- ProxRuntime
- implicit class ResourceOps[A] extends AnyRef
- Attributes
- protected
- Definition Classes
- ProxRuntime
- implicit class StreamOps[A] extends AnyRef
- Attributes
- protected
- Definition Classes
- ProxRuntime
- case class AllCapturedThroughPipe[O, OR](pipeFn: (Prox.Process[_, _]) => Prox.ProxPipe[Byte, O], runner: (Prox.ProxStream[O]) => Prox.ProxIO[OR], chunkSize: Int = 8192) extends Prox.GroupErrorRedirection with Product with Serializable
- Definition Classes
- RedirectionModule
- case class AllCapturedToSink(sinkFn: (Prox.Process[_, _]) => Prox.ProxSink[Byte], chunkSize: Int = 8192) extends Prox.GroupErrorRedirection with Product with Serializable
- Definition Classes
- RedirectionModule
- case class AllToFile(pathFn: (Prox.Process[_, _]) => Path, append: Boolean) extends Prox.GroupErrorRedirection with Product with Serializable
- Definition Classes
- RedirectionModule
- case class AllToStdErr() extends Prox.GroupErrorRedirection with Product with Serializable
- Definition Classes
- RedirectionModule
- sealed trait GroupErrorRedirection extends AnyRef
Supported process group error redirection types.
Supported process group error redirection types. Should not be used directly, see the redirection traits instead.
- Definition Classes
- RedirectionModule
- trait GroupErrorRedirectionType[R] extends AnyRef
Helper type class for process group error redirection dependent typing
Helper type class for process group error redirection dependent typing
- Definition Classes
- RedirectionModule
- case class InputFile(path: Path) extends Prox.InputRedirection with Product with Serializable
- Definition Classes
- RedirectionModule
- sealed trait InputRedirection extends AnyRef
Supported input redirection types.
Supported input redirection types. Should not be used directly, see the redirection traits instead.
- Definition Classes
- RedirectionModule
- case class InputStream(stream: Prox.ProxStream[Byte], flushChunks: Boolean) extends Prox.InputRedirection with Product with Serializable
- Definition Classes
- RedirectionModule
- case class OutputFile(path: Path, append: Boolean) extends Prox.OutputRedirection with Product with Serializable
- Definition Classes
- RedirectionModule
- sealed trait OutputRedirection extends AnyRef
Supported output redirection types.
Supported output redirection types. Should not be used directly, see the redirection traits instead.
- Definition Classes
- RedirectionModule
- trait OutputRedirectionType[R] extends AnyRef
Helper type class for output and error redirection dependent typing
Helper type class for output and error redirection dependent typing
- Definition Classes
- RedirectionModule
- case class OutputStreamThroughPipe[O, OR](pipe: Prox.ProxPipe[Byte, O], runner: (Prox.ProxStream[O]) => Prox.ProxIO[OR], chunkSize: Int = 8192) extends Prox.OutputRedirection with Product with Serializable
- Definition Classes
- RedirectionModule
- case class OutputStreamToSink(sink: Prox.ProxSink[Byte], chunkSize: Int = 8192) extends Prox.OutputRedirection with Product with Serializable
- Definition Classes
- RedirectionModule
- trait RedirectableError[+P[_] <: Prox.Process[_, _]] extends AnyRef
The capability to redirect the error output of a process
The capability to redirect the error output of a process
- P
Self type without the RedirectableError capability
- Definition Classes
- RedirectionModule
- trait RedirectableErrors[+P[_] <: Prox.ProcessGroup[_, _]] extends AnyRef
The capability to redirect all the error outputs simultaneously of a process group
The capability to redirect all the error outputs simultaneously of a process group
- P
Self type without the RedirectableErrors capability
- Definition Classes
- RedirectionModule
- trait RedirectableInput[+P <: ProcessLike] extends AnyRef
The capability to redirect the input of a process or process group
The capability to redirect the input of a process or process group
- Definition Classes
- RedirectionModule
- trait RedirectableOutput[+P[_] <: ProcessLike] extends AnyRef
The capability to redirect the output of a process or a process group
The capability to redirect the output of a process or a process group
- P
Self type without the RedirectableOutput capability
- Definition Classes
- RedirectionModule
- case class StdIn() extends Prox.InputRedirection with Product with Serializable
- Definition Classes
- RedirectionModule
- case class StdOut() extends Prox.OutputRedirection with Product with Serializable
- Definition Classes
- RedirectionModule
- trait PipeBuilder[P] extends AnyRef
- Definition Classes
- SyntaxModule
- class PipeBuilderSyntax[P] extends AnyRef
- Definition Classes
- SyntaxModule
- implicit class ProcessPiping extends AnyRef
Extension methods for unbound processes enabling the creation of process groups
Extension methods for unbound processes enabling the creation of process groups
- Definition Classes
- SyntaxModule
- implicit class ProcessStringContextIO extends AnyRef
String interpolator for an alternative of Process.apply
String interpolator for an alternative of Process.apply
val process = proc"ls -hal $dir"
- Definition Classes
- SyntaxModule
Abstract Value Members
- abstract val instances: Sync[F] with Concurrent[F]
Concrete Value Members
- object ProcessGroup
- Definition Classes
- ProcessGroupModule
- object Process
- Definition Classes
- ProcessModule
- object JVMProcessRunnerBase
- Definition Classes
- ProcessRunnerModule
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- final def blockingEffect[A](f: => A, wrapError: (Throwable) => ProxError): ProxIO[A]
- Attributes
- protected
- Definition Classes
- ProxFS2 → ProxRuntime
- final def bracket[A, B](acquire: ProxIO[A])(use: (A) => ProxIO[B])(fin: (A, IOResult) => ProxIO[Unit]): ProxIO[B]
- Attributes
- protected
- Definition Classes
- ProxFS2 → ProxRuntime
- final def cancelFiber[A](f: ProxFiber[A]): ProxIO[Unit]
- Attributes
- protected
- Definition Classes
- ProxFS2 → ProxRuntime
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @jdk.internal.HotSpotIntrinsicCandidate() @native()
- final def drainStream[A](s: ProxStream[A]): ProxIO[Unit]
- Attributes
- protected
- Definition Classes
- ProxFS2 → ProxRuntime
- final def drainToJavaOutputStream(stream: ProxStream[Byte], output: OutputStream, flushChunks: Boolean): ProxIO[Unit]
- Attributes
- protected
- Definition Classes
- ProxFS2 → ProxRuntime
- final def effect[A](f: => A, wrapError: (Throwable) => ProxError): ProxIO[A]
- Attributes
- protected
- Definition Classes
- ProxFS2 → ProxRuntime
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def exitCodeFromInt(value: Int): ProxExitCode
- Attributes
- protected
- Definition Classes
- ProxFS2 → ProxRuntime
- final def foldMonoidStream[A](s: ProxStream[A])(implicit arg0: ProxMonoid[A]): ProxIO[A]
- Attributes
- protected
- Definition Classes
- ProxFS2 → ProxRuntime
- final def foldStream[A, B](s: ProxStream[A], init: B, f: (B, A) => B): ProxIO[B]
- Attributes
- protected
- Definition Classes
- ProxFS2 → ProxRuntime
- final def fromJavaInputStream(input: java.io.InputStream, chunkSize: Int): ProxStream[Byte]
- Attributes
- protected
- Definition Classes
- ProxFS2 → ProxRuntime
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @jdk.internal.HotSpotIntrinsicCandidate() @native()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @jdk.internal.HotSpotIntrinsicCandidate() @native()
- final def identityPipe[A]: ProxPipe[A, A]
- Attributes
- protected
- Definition Classes
- ProxFS2 → ProxRuntime
- final def ioFlatMap[A, B](io: ProxIO[A], f: (A) => ProxIO[B]): ProxIO[B]
- Attributes
- protected
- Definition Classes
- ProxFS2 → ProxRuntime
- final def ioMap[A, B](io: ProxIO[A], f: (A) => B): ProxIO[B]
- Attributes
- protected
- Definition Classes
- ProxFS2 → ProxRuntime
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def joinFiber[A](f: ProxFiber[A]): ProxIO[A]
- Attributes
- protected
- Definition Classes
- ProxFS2 → ProxRuntime
- final def makeResource[A](acquire: ProxIO[A], release: (A) => ProxIO[Unit]): ProxResource[A]
- Attributes
- protected
- Definition Classes
- ProxFS2 → ProxRuntime
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @jdk.internal.HotSpotIntrinsicCandidate() @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @jdk.internal.HotSpotIntrinsicCandidate() @native()
- final def pure[A](value: A): ProxIO[A]
- Attributes
- protected
- Definition Classes
- ProxFS2 → ProxRuntime
- final def raiseError(error: ProxError): ProxIO[Unit]
- Attributes
- protected
- Definition Classes
- ProxFS2 → ProxRuntime
- final def runStreamTo[A](s: ProxStream[A], sink: ProxSink[A]): ProxIO[Unit]
- Attributes
- protected
- Definition Classes
- ProxFS2 → ProxRuntime
- final def startFiber[A](f: ProxIO[A]): ProxIO[ProxFiber[A]]
- Attributes
- protected
- Definition Classes
- ProxFS2 → ProxRuntime
- final def streamThrough[A, B](s: ProxStream[A], pipe: ProxPipe[A, B]): ProxStream[B]
- Attributes
- protected
- Definition Classes
- ProxFS2 → ProxRuntime
- final def streamToVector[A](s: ProxStream[A]): ProxIO[Vector[A]]
- Attributes
- protected
- Definition Classes
- ProxFS2 → ProxRuntime
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def traverse[A, B](list: List[A])(f: (A) => ProxIO[B]): ProxIO[List[B]]
- Attributes
- protected
- Definition Classes
- ProxFS2 → ProxRuntime
- final def unit: ProxIO[Unit]
- Attributes
- protected
- Definition Classes
- ProxFS2 → ProxRuntime
- final def useResource[A, B](r: ProxResource[A], f: (A) => ProxIO[B]): ProxIO[B]
- Attributes
- protected
- Definition Classes
- ProxFS2 → ProxRuntime
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- object GroupErrorRedirectionType
- Definition Classes
- RedirectionModule
- object OutputRedirectionType
- Definition Classes
- RedirectionModule
- object RedirectableErrors
- Definition Classes
- RedirectionModule
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated
(Since version 9)