Spec-Zone.ru › OCaml 5.0

Модуль Scanf.Scanning

module Scanning: sig .. end
type in_channel 

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

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

Spec-Zone.ru

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