Spec-Zone.ru › OCaml 4.14

Модуль Scanf.Scanning

module Scanning: sig .. end
type in_channel 

Понятие канала ввода для модуля Scanf: эти каналы предоставляют все необходимое оборудование для чтения из любого источника символов, включая значение in_channel. Значение Scanf.Scanning.in_channel также называется форматированным каналом ввода или, эквивалентно, сканирующим буфером. Тип Scanf.Scanning.scanbuf ниже является псевдонимом для Scanning.in_channel.

  • Since 3.12.0
type scanbuf = in_channel 

Тип сканирующих буферов. Сканирующий буфер — это источник, из которого функция форматированного ввода получает символы. Сканирующий буфер содержит текущее состояние сканирования, плюс функцию получения следующего символа из ввода и буфер токенов для хранения сопоставленной до сих пор строки.

Примечание: действие сканирования часто может потребовать предварительного просмотра одного символа; когда этот символ «предварительного просмотра» не принадлежит считанному токену, он возвращается в сканирующий буфер и становится следующим символом, который ещё нужно прочитать.

val stdin : in_channel

Стандартное понятие ввода для модуля Scanf. Scanning.stdin является Scanf.Scanning.in_channel форматированным каналом ввода, присоединённым к stdin.

Примечание: в интерактивной системе, когда вход читается из stdin, символ новой строки, который запускает вычисление, является частью ввода; таким образом, спецификации сканирования должны правильно пропустить этот дополнительный символ новой строки (например, просто добавьте '\n' как последний символ строки формата).

  • Since 3.12.0
type file_name = string 

Удобный псевдоним для обозначения имени файла.

  • Since 4.00.0
val open_in : file_name -> in_channel

Scanning.open_in fname возвращает Scanf.Scanning.in_channel форматированный канал ввода для буферизованного чтения в текстовом режиме из файла fname.

Примечание: open_in возвращает форматированный канал ввода, который эффективно читает символы большими блоками; в отличие от from_channel ниже, возвращающего форматированные каналы ввода, которые должны читать по одному символу за раз, что приводит к гораздо более медленной скорости сканирования.

  • Since 3.12.0
val open_in_bin : file_name -> in_channel

Scanning.open_in_bin fname возвращает Scanf.Scanning.in_channel форматированный канал ввода для буферизованного чтения в двоичном режиме из файла fname.

  • Since 3.12.0
val close_in : in_channel -> unit

Закрывает in_channel, связанный с данным Scanf.Scanning.in_channel форматированным каналом ввода.

  • Since 3.12.0
val from_file : file_name -> in_channel

Псевдоним для Scanf.Scanning.open_in выше.

val from_file_bin : string -> in_channel

Псевдоним для Scanf.Scanning.open_in_bin выше.

val from_string : string -> in_channel

Scanning.from_string s возвращает Scanf.Scanning.in_channel форматированный канал ввода, который читает из заданной строки. Чтение начинается с первого символа в строке. Условие конца ввода устанавливается при достижении конца строки.

val from_function : (unit -> char) -> in_channel

Scanning.from_function f возвращает Scanf.Scanning.in_channel форматированный канал ввода с заданной функцией в качестве метода чтения.

При необходимости сканирования ещё одного символа вызывается заданная функция.

Когда функция больше не имеет символов для предоставления, она обязана сигнализировать об условии конца ввода, подняв исключение End_of_file.

val from_channel : in_channel -> in_channel

Scanning.from_channel ic возвращает Scanf.Scanning.in_channel форматированный канал ввода, который читает из обычного in_channel канала ввода ic аргумент. Чтение начинается в текущей позиции чтения ic.

val end_of_input : in_channel -> bool

Scanning.end_of_input ic проверяет условие конца ввода для данного Scanf.Scanning.in_channel форматированного канала ввода.

val beginning_of_input : in_channel -> bool

Scanning.beginning_of_input ic проверяет условие начала ввода для данного Scanf.Scanning.in_channel форматированного канала ввода.

val name_of_input : in_channel -> string

Scanning.name_of_input ic возвращает имя источника символов для данного Scanf.Scanning.in_channel форматированного канала ввода.

  • Since 3.09.0
val stdib : in_channel

Устаревший псевдоним для Scanf.Scanning.stdin, сканирующего буфера, читающего из stdin.

© 1995-2022 INRIA.
https://v2.ocaml.org/releases/4.14/htmlman/libref/Scanf.Scanning.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API