Object scala.sys.process.BasicIO
object BasicIO
Члены-значения
final def !=(arg0: Any): Boolean
Проверка двух объектов на неравенство.
- returns
trueесли !(this == that), иначе false.
- Definition Classes
- AnyRef → Any
final def ##(): Int
Эквивалентно x.hashCode за исключением упакованных числовых типов и null. Для числовых типов возвращает хэш-значение, согласованное с равенством значений: если два экземпляра типа значения сравниваются как true, то ## вернет одинаковое хэш-значение для каждого из них. Для null возвращает хэш-код, где null.hashCode выбрасывает NullPointerException.
- returns
хэш-значение, согласованное с ==
- Definition Classes
- AnyRef → Any
final def ==(arg0: Any): Boolean
Выражение x == that эквивалентно if (x eq null) that eq null else x.equals(that).
- returns
trueесли объект-приемник эквивалентен аргументу;falseв противном случае.
- Definition Classes
- AnyRef → Any
final val BufferSize: Int(8192)
final val Newline: String
def apply(withIn: Boolean, log: ProcessLogger): ProcessIO
Создаёт ProcessIO из ProcessLogger. Может прикрепить ввод процесса к стандартному вводу.
- withIn
Истинно, если ввод процесса должен быть прикреплен к стандартному вводу.
- log
ProcessLoggerдля получения всего вывода, обычного и ошибок.- returns
ProcessIOс указанными характеристиками.
def apply(withIn: Boolean, buffer: Appendable, log: Option[ProcessLogger]): ProcessIO
Создаёт ProcessIO , который добавляет свой вывод в Appendable. Может прикрепить ввод процесса к стандартному вводу, и он будет отправлять поток ошибок либо в stderr, либо в ProcessLogger.
Например, ProcessIO , созданный функцией ниже, будет сохранять обычный вывод в предоставленный буфер и выводить все ошибки в stderr. Ввод будет читаться из стандартного ввода.
import scala.sys.process.{BasicIO, ProcessLogger}
val printer = ProcessLogger(println(_))
def appendToBuffer(b: StringBuffer) = BasicIO(true, b, Some(printer))
- withIn
Истинно, если ввод процесса должен быть прикреплен к стандартному вводу.
- buffer
Appendable, который получит обычный вывод процесса.- log
Необязательный
ProcessLogger, в который должен быть отправлен вывод. ЕслиNone, вывод будет отправлен в stderr.- returns
ProcessIOс указанными характеристиками.
def apply(withIn: Boolean, output: (String) => Unit, log: Option[ProcessLogger]): ProcessIO
Создаёт ProcessIO из функции String => Unit. Может прикрепить ввод процесса к стандартному вводу, и он будет отправлять поток ошибок либо в stderr, либо в ProcessLogger.
Например, ProcessIO , созданный ниже, выведет весь обычный вывод, игнорируя весь вывод ошибок. Ввод не будет предоставлен.
import scala.sys.process.BasicIO val errToDevNull = BasicIO(false, println(_), None)
- withIn
Истинно, если ввод процесса должен быть прикреплен к стандартному вводу.
- output
Функция, которая будет вызываться с выводом процесса.
- log
Необязательный
ProcessLogger, в который должен быть отправлен вывод. ЕслиNone, вывод будет отправлен в stderr.- returns
ProcessIOс указанными характеристиками.
final def asInstanceOf[T0]: T0
Приводит объект-приемник к типу T0.
Обратите внимание, что успех приведения типов во время выполнения зависит от семантики стирания Scala. Таким образом, выражение 1.asInstanceOf[String] выбросит ClassCastException во время выполнения, тогда как выражение List(1).asInstanceOf[List[String]] не выбросит исключение. В последнем примере, из-за стирания аргумента типа во время компиляции, невозможно проверить, соответствуют ли элементы списка запрошенному типу.
- returns
объект-приемник.
- Definition Classes
- Any
- Exceptions thrown
ClassCastException, если объект-приемник не является экземпляром стирания типаT0.
def clone(): AnyRef
Создаёт копию объекта-приемника.
По умолчанию реализация метода clone зависит от платформы.
- returns
копия объекта-приемника.
def close(c: Closeable): Unit
def connectToIn(o: OutputStream): Unit
final def eq(arg0: AnyRef): Boolean
Проверяет, является ли аргумент (that) ссылкой на объект-получатель (this).
Метод eq реализует отношение эквивалентности на не-нулевых экземплярах AnyRef, и обладает тремя дополнительными свойствами:
-
Он согласован: для любых не-нулевых экземпляров
x и y типа AnyRef, многократные вызовы x.eq(y) последовательно возвращают true или последовательно возвращают false.Для любого не-нулевого экземпляра x типа AnyRef, вызовы x.eq(null) и null.eq(x) возвращают false.
null.eq(null) возвращает true. При переопределении методов equals или hashCode важно обеспечить соответствие их поведения отношению референциальной эквивалентности. Поэтому, если два объекта являются ссылками друг на друга (o1 eq o2), они должны быть равны друг другу (o1 == o2) и должны иметь одинаковое значение хеша (o1.hashCode == o2.hashCode).
- returns
trueесли аргумент является ссылкой на объект-получатель;falseв противном случае.
- Definition Classes
- AnyRef
def equals(arg0: AnyRef): Boolean
Метод проверки равенства для ссылочных типов. По умолчанию делегирует вызов к eq.
См. также equals в scala.Any.
- returns
trueесли объект-получатель эквивалентен аргументу;falseв противном случае.
- Definition Classes
- AnyRef → Any
def finalize(): Unit
Вызывается сборщиком мусора для объекта-получателя, когда к объекту больше нет ссылок.
Детали вызова метода finalize, а также взаимодействие с finalize и нелокальными возвратами и исключениями зависят от платформы.
final def getClass(): Class[_ <: AnyRef]
Возвращает представление класса объекта во время выполнения.
- returns
объект класса, соответствующий типу получателя во время выполнения.
def getErr(log: Option[ProcessLogger]): (InputStream) => Unit
Возвращает функцию InputStream => Unit по заданному опциональному ProcessLogger. Если логгер не передан, функция будет отправлять вывод в stderr. Данная функция может использоваться для создания scala.sys.process.ProcessIO.
- log
Опциональный
ProcessLoggerдля отправки содержимогоInputStream.- returns
Функция
InputStream => Unit(используемая scala.sys.process.ProcessIO) для отправки данных в указанныйProcessLoggerили, если он отсутствует, в stderr.
def hashCode(): Int
Метод hashCode для ссылочных типов. См. hashCode в scala.Any.
- returns
значение хэш-кода для данного объекта.
def input(connect: Boolean): (OutputStream) => Unit
Возвращает функцию OutputStream => Unit, которая либо считывает содержимое из stdin, либо ничего не делает. Эта функция может использоваться scala.sys.process.ProcessIO.
final def isInstanceOf[T0]: Boolean
Проверка, является ли динамический тип объекта получателя T0.
Обратите внимание, что результат проверки выполняется с учётом стирания типов в Scala. Поэтому выражение 1.isInstanceOf[String] вернёт false, в то время как List(1).isInstanceOf[List[String]] вернёт true. В последнем примере, из-за стирания типа аргумента во время компиляции, невозможно проверить, относятся ли элементы списка к указанному типу.
- returns
trueесли объект-получатель является экземпляром стирания типаT0;falseв противном случае.
- Definition Classes
- Any
final def ne(arg0: AnyRef): Boolean
Эквивалентно !(this eq that).
- returns
trueесли аргумент не является ссылкой на объект-получатель;falseв противном случае.
- Definition Classes
- AnyRef
final def notify(): Unit
Разбуживает единственную нить, ожидающую монитора объекта-приемника.
- Definition Classes
- AnyRef
- Annotations
- @native()
- Note
не указано SLS как член AnyRef
final def notifyAll(): Unit
Разбуживает все нити, ожидающие монитора объекта-приемника.
- Definition Classes
- AnyRef
- Annotations
- @native()
- Note
не указано SLS как член AnyRef
def processFully(processLine: (String) => Unit): (InputStream) => Unit
Возвращает функцию InputStream => Unit, которая вызовет переданную функцию со всеми прочитанными данными. Эта функция может использоваться для создания scala.sys.process.ProcessIO. Функция processLine будет вызываться с каждой прочитанной строкой, а Newline будет добавляться после каждой строки.
- processLine
Функция, которая будет вызываться со всеми данными, прочитанными из потока.
- returns
Функция
InputStream => Unit(используется scala.sys.process.ProcessIO, которая вызоветprocessLineсо всеми прочитанными данными из потока.
def processFully(buffer: Appendable): (InputStream) => Unit
Возвращает функцию InputStream => Unit, которая добавляет все прочитанные данные к предоставленному Appendable. Эта функция может использоваться для создания scala.sys.process.ProcessIO. Буфер будет добавляться построчно.
- buffer
Объект
Appendable, такой какStringBuilderилиStringBuffer.- returns
Функция
InputStream => Unit(используется scala.sys.process.ProcessIO, которая добавит все прочитанные данные из потока в буфер.
def processLinesFully(processLine: (String) => Unit)(readLine: () => String): Unit
def standard(in: (OutputStream) => Unit): ProcessIO
def standard(connectInput: Boolean): ProcessIO
final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
def toStdErr: (InputStream) => Unit
def toStdOut: (InputStream) => Unit
def toString(): String
Создает строковое представление этого объекта. По умолчанию представление зависит от платформы. На платформе Java это конкатенация имени класса, «@» и хэш-кода объекта в шестнадцатеричном формате.
- returns
строковое представление объекта.
- Definition Classes
- AnyRef → Any
def transferFully(in: InputStream, out: OutputStream): Unit
Копирует все входные данные из входного потока в выходной поток. Закрывает входной поток после его полного чтения.
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
© 2002-2019 EPFL, with contributions from Lightbend.
Licensed under the Apache License, Version 2.0.
https://www.scala-lang.org/api/2.13.0/scala/sys/process/BasicIO$.html
Этот объект содержит фабрики для scala.sys.process.ProcessIO, которые могут использоваться для управления вводом-выводом процесса scala.sys.process.Process, когда scala.sys.process.ProcessBuilder запускается с командой
run.Он также содержит некоторые вспомогательные методы, которые могут быть использованы в создании
ProcessIO.Он используется другими классами в пакете для реализации различных функций, но также может использоваться кодом клиента.