mill.internal

package mill.internal

Members list

Type members

Classlikes

class AnsiNav(output: Writer)

Attributes

Companion
object
Source
AnsiNav.scala
Supertypes
class Object
trait Matchable
class Any
object AnsiNav

Attributes

Companion
class
Source
AnsiNav.scala
Supertypes
class Object
trait Matchable
class Any
Self type
AnsiNav.type
case class Colors(info: Attrs, warn: Attrs, error: Attrs)

Attributes

Companion
object
Source
Colors.scala
Supertypes
trait Serializable
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
Known subtypes
object BlackWhite
object Default
object Colors

Attributes

Companion
class
Source
Colors.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
Colors.type
class FileLogger(file: Path, append: Boolean = ...) extends Logger, AutoCloseable

Attributes

Source
FileLogger.scala
Supertypes
trait AutoCloseable
trait Logger
trait Actions
class Object
trait Matchable
class Any
Show all
class JsonArrayLogger[T](outPath: Path, indent: Int)(using evidence$1: Writer[T])

Attributes

Companion
object
Source
JsonArrayLogger.scala
Supertypes
class Object
trait Matchable
class Any
Known subtypes
class Profile

Attributes

Companion
class
Source
JsonArrayLogger.scala
Supertypes
class Object
trait Matchable
class Any
Self type
class LineBufferingOutputStream(onLineComplete: ByteArrayOutputStream => Unit) extends OutputStream

Prefixes the first and each new line with a dynamically provided prefix, and buffers up each line in memory before writing to the out stream to prevent individual lines from being mixed together

Prefixes the first and each new line with a dynamically provided prefix, and buffers up each line in memory before writing to the out stream to prevent individual lines from being mixed together

Value parameters

linePrefix

The function to provide the prefix.

out

The underlying output stream.

Attributes

Source
LineBufferingOutputStream.scala
Supertypes
class OutputStream
trait Flushable
trait Closeable
trait AutoCloseable
class Object
trait Matchable
class Any
Show all
case class MillCliConfig(noDaemon: Flag = ..., showVersion: Flag = ..., ringBell: Flag = ..., ticker: Option[Boolean] = ..., debugLog: Flag = ..., keepGoing: Flag = ..., extraSystemProperties: Map[String, String] = ..., threadCountRaw: Option[String] = ..., imports: Seq[String] = ..., interactive: Flag = ..., help: Flag, helpAdvanced: Flag, watch: Flag = ..., watchViaFsNotify: Boolean = ..., leftoverArgs: Leftover[String] = ..., color: Option[Boolean] = ..., metaLevel: Option[Int] = ..., allowPositional: Flag = ..., bsp: Flag, bspInstall: Flag, bspWatch: Boolean = ..., noBuildLock: Flag = ..., noWaitForBuildLock: Flag = ..., offline: Flag = ..., noFilesystemChecker: Flag = ..., tabComplete: Flag = ..., home: Path = ..., repl: Flag = ..., noServer: Flag = ..., silent: Flag = ..., disableCallgraph: Flag = ..., disablePrompt: Flag = ..., enableTicker: Option[Boolean] = ..., disableTicker: Flag, jshell: Flag = ...)

Attributes

Companion
object
Source
MillCliConfig.scala
Supertypes
trait Serializable
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object MillCliConfig

Attributes

Companion
class
Source
MillCliConfig.scala
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
class MultiLogger(val logger1: Logger, val logger2: Logger, val inStream0: InputStream) extends Logger

Attributes

Source
MultiLogger.scala
Supertypes
trait Logger
trait Actions
class Object
trait Matchable
class Any
class MultiStream(stream1: OutputStream, stream2: OutputStream) extends PrintStream

Attributes

Source
MultiStream.scala
Supertypes
class PrintStream
trait Appendable
class FilterOutputStream
class OutputStream
trait Flushable
trait Closeable
trait AutoCloseable
class Object
trait Matchable
class Any
Show all
class PipeStreams(val bufferSize: Int = ...)

Fork of java.io.Piped{Input,Output}Stream that allows writes to come from separate threads. Really the same logic just with the assertions on thread liveness removed, added some synchronization to ensure atomic writes, and somewhat cleaned up as a single object rather than two loose objects you have to connect together.

Fork of java.io.Piped{Input,Output}Stream that allows writes to come from separate threads. Really the same logic just with the assertions on thread liveness removed, added some synchronization to ensure atomic writes, and somewhat cleaned up as a single object rather than two loose objects you have to connect together.

Attributes

Source
PipeStreams.scala
Supertypes
class Object
trait Matchable
class Any
Self type
case class PrefixLogger(logger0: Logger, key0: Seq[String], keySuffix: String = ..., message: String = ..., noPrefix: Boolean = ..., redirectOutToErr0: Option[Boolean] = ...) extends Logger

Configures a logger that prefixes lines of logs.

Configures a logger that prefixes lines of logs.

Generates log lines of the form

[$parentKeys-$key0/$keySuffix] $message [$parentKeys-$key0] ...logs... [$parentKeys-$key0] ...logs... [$parentKeys-$key0] ...logs...

And a prompt line of the form

[$parentKeys-$key0] $message

Attributes

Source
PrefixLogger.scala
Supertypes
trait Serializable
trait Serializable
trait Product
trait Equals
trait Logger
trait Actions
class Object
trait Matchable
class Any
Show all
class PromptLogger(colored: Boolean, enableTicker: Boolean, infoColor: Attrs, warnColor: Attrs, errorColor: Attrs, systemStreams0: SystemStreams, debugEnabled: Boolean, titleText: String, terminfoPath: Path, currentTimeMillis: () => Long, autoUpdate: Boolean = ..., val chromeProfileLogger: ChromeProfile) extends Logger, AutoCloseable

Gnarly multithreaded stateful code to handle the terminal prompt and log prefixer that Mill shows to tell the user what is running.

Gnarly multithreaded stateful code to handle the terminal prompt and log prefixer that Mill shows to tell the user what is running.

Most operations that update mutable state or writes to parent systemStreams0 is synchronized under the PromptLogger object. Notably, child writes to streams are not synchronized, and instead goes into a PipeStreams buffer to be read out and handled asynchronously.

Attributes

Companion
object
Source
PromptLogger.scala
Supertypes
trait AutoCloseable
trait Logger
trait Actions
class Object
trait Matchable
class Any
Show all
object PromptLogger

Attributes

Companion
class
Source
PromptLogger.scala
Supertypes
class Object
trait Matchable
class Any
Self type
class ProxyLogger(logger: Logger) extends Logger

A Logger that forwards all logging to another Logger. Intended to be used as a base class for wrappers that modify logging behavior.

A Logger that forwards all logging to another Logger. Intended to be used as a base class for wrappers that modify logging behavior.

Attributes

Source
ProxyLogger.scala
Supertypes
trait Logger
trait Actions
class Object
trait Matchable
class Any
class SimpleLogger(val unprefixedStreams: SystemStreams, val logKey: Seq[String], debugEnabled: Boolean) extends Logger

Attributes

Source
SimpleLogger.scala
Supertypes
trait Logger
trait Actions
class Object
trait Matchable
class Any

Algorithm to compute the minimal spanning forest of a directed acyclic graph that covers a particular subset of importantVertices (a "Steiner Forest"), minimizing the maximum height of the resultant trees. When multiple solutions exist with the same height, one chosen is arbitrarily. (This is much simpler than the "real" algorithm which aims to minimize the sum of edge/vertex weights)

Algorithm to compute the minimal spanning forest of a directed acyclic graph that covers a particular subset of importantVertices (a "Steiner Forest"), minimizing the maximum height of the resultant trees. When multiple solutions exist with the same height, one chosen is arbitrarily. (This is much simpler than the "real" algorithm which aims to minimize the sum of edge/vertex weights)

Returns the forest as a Node structure with the top-level node containing the roots of the forest

Attributes

Source
SpanningForest.scala
Supertypes
class Object
trait Matchable
class Any
Self type
object Tarjans

Attributes

Source
Tarjans.scala
Supertypes
class Object
trait Matchable
class Any
Self type
Tarjans.type
object Util

Attributes

Source
Util.scala
Supertypes
class Object
trait Matchable
class Any
Self type
Util.type