モジュール stream

入出力ストリームの述語です.

目次

述語


Top of this page Contents Index of this package LiLFeS Documents LiLFeS Home Page Tsujii laboratory

述語

open_null_stream/1

書式open_null_stream(-Handle)
引数
-Handlehandle_nullstream ストリームハンドル
注意 また、述語が失敗するのは次の場合です。
  • ストリームの最大数を越えて開こうとしたとき.
  • ストリームハンドルが単一化できなかったとき.
空ストリームを開きます.
> :- open_null_stream(X).

open_socket_stream/3

書式open_socket_stream(+Host, +Port, -Handle)
引数
+Hoststring 相手のホスト名
-Handlehandle_socketstream ストリームハンドル
注意また、述語が失敗するのは次の場合です。
  • ホスト名,ポート番号の指定が不適切なとき.
  • 相手ホストのポートに接続できなかったとき.
  • ストリームの最大数を越えて開こうとしたとき.
  • ストリームハンドルが単一化できなかったとき.
ソケットストリームを開きます.
> :- open_socket_stream("dallmayr", 12345, X).

open_pty_stream/3

書式open_pty_stream(+Name, +Args, -Handle)
引数
+Namestring 実行する外部コマンド名
+Argslist of strings コマンドに渡す引数
-Handlehandle_ptystream ストリームハンドル
標準入出力を通して外部コマンドと通信する仮想端末ストリームを開きます.

open_process_stream/4

書式open_process_stream(+Name, +Args, +Mode, -Handle)
引数
+Namestring コマンド名
+Argslist of strings コマンドに渡す引数
+Modestring オープンモード(I/O)
-Handlehandle_processstream ストリームハンドル
標準入力または出力を通して外部プログラムと通信するストリームを開きます.

open_file_stream/3

書式open_file_stream(+Name, +Mode, -Handle)
引数
+Namestring ファイル名
+Modestringファイルのオープンモード.
-Handlehandle_filestream ストリームハンドル
注意以下のモードが指定できます.
  • "r" : 読み込み専用で開く。ファイルが無い場合は述語が失敗する。
  • "w" : 書き込み専用で開く。既存のファイルは上書きされる。
  • "a" : 追加書き込み専用で開く.
  • "r+" : 読み書きで開く。ファイルが無い場合は作成される。
  • "w+" : 読み書きで開く。既存のファイルは上書きされる。
  • "a+" : 読み書きで開く.ファイルの末尾から書き込まれる.
また、述語が失敗するのは次の場合です。
  • ファイル名,オープンモードの指定が不適切なとき.
  • 何らかの理由でファイルが開けなかったとき.
  • ストリームの最大数を越えて開こうとしたとき.
  • ストリームハンドルが単一化できなかったとき.
  • ファイルストリームを開きます.
    > :- open_file_stream("/etc/passwd", "r", X).

    open_server_stream/2

    書式open_server_stream(+Port,-Handle)
    引数
    +Portintegerポート番号
    -Handlehandle_serverstreamストリームハンドル
    注意以下の場合,この述語は失敗します.
    • ポートが開けない
    サーバストリームを開きます.
     > ?- open_server_stream(8500, X).
    

    accept_connection/1

    書式accept_connection(+Handle)
    引数
    +Handlehandle_serverstreamストリームハンドル
    サーバストリームへの接続を受け入れます.
    > ?- open_server_stream(8500, X), accept_connection(X).

    close_connection/1

    書式close_connection(+Handle)
    引数
    +Handlehandle_serverstreamストリームハンドル
    サーバストリームへの接続を閉じます.

    write_string/2

    書式write_string(+Handle, +String)
    引数
    +Handlehandle_stream ストリームハンドル
    +Stringstring 出力する文字列
    注意 述語が失敗するのは次の場合です。
    • ストリームハンドルが無効であったとき.
    • 第2引数が文字列でないとき.
    文字列をストリームに書き込みます.
    > :- open_file_stream("hoge", "w", X), write_string(X, "poge").

    writeln_string/2

    書式writeln_string(+Handle, +String)
    引数
    +Handlehandle_stream ストリームハンドル
    +Stringstring 出力する文字列
    注意 述語が失敗するのは次の場合です。
    • ストリームハンドルが無効であったとき.
    • 第2引数が文字列でないとき.
    文字列をストリームに書き込みます. 最後に改行文字も出力されます.
    > :- open_file_stream("hoge", "w", X), writeln_string(X, "poge").

    write_string_list/2

    書式write_string_list(+Handle, +List)
    引数
    +Handlehandle_stream ストリームハンドル
    +Listlist 出力する文字列(または整数)のリスト
    注意 述語が失敗するのは次の場合です。
    • ストリームハンドルが無効であったとき.
    • 第2引数が文字列(又は整数)のリストでないとき.
    文字列(または整数)のリストをストリームに書き込みます.

    writeln_string_list/2

    書式writeln_string_list(+Handle, +List)
    引数
    +Handlehandle_stream ストリームハンドル
    +Listlist 出力する文字列(または整数)のリスト
    注意 述語が失敗するのは次の場合です。
    • ストリームハンドルが無効であったとき.
    • 第2引数が文字列(又は整数)のリストでないとき.
    文字列(または整数)のリストをストリームに書き込みます. 最後に改行文字も出力されます.

    read_string/3

    書式read_string(+Handle, +Len, -String)
    引数
    +Handlehandle_stream ストリームハンドル
    +Leninteger 読み込む文字数
    -Stringstring 読み込んだ文字列
    注意 述語が失敗するのは次の場合です。
    • ストリームハンドルが無効であったとき.
    • 第2引数がintegerでないとき.
    • ストリームが終了しているとき.
    文字列をストリームから読み出します.
    > :- open_file_stream("/etc/passwd", "r", X), read_string(X, 10, Y).

    readln_string/2

    書式readln_string(+Handle, -String)
    引数
    +Handlehandle_stream ストリームハンドル
    -Stringstring 読み込んだ文字列
    注意 述語が失敗するのは次の場合です。
    • ストリームハンドルが無効であったとき.
    • ストリームが終了しているとき.
    次の改行文字までの文字列をストリームから読み出します.
    > :- open_file_stream("/etc/passwd", "r", X), readln_string(X, Y).

    write_stream/2

    書式write_stream(+Handle, +Data)
    引数
    +Handlehandle_stream ストリームハンドル
    +Datalist of integers 出力するデータ.0〜255の整数のリストでなければならない.
    注意 述語が失敗するのは次の場合です。
    • ストリームハンドルが無効であったとき.
    バイナリデータをストリームに出力します.
    > :- open_file_stream("/etc/passwd", "r", X), readln_string(X, Y).

    read_stream/3

    書式read_stream(+Handle, +Len, -Data)
    引数
    +Handlehandle_stream ストリームハンドル
    +Leninteger 読み込むデータの長さ
    -Datalist of integers 読み込んだデータ.
    注意 述語が失敗するのは次の場合です。
    • ストリームハンドルが無効であったとき.
    • 第2引数がintegerでないとき.
    • ストリームが終了しているとき.
    バイナリデータをストリームから読み込みます.
    > :- open_file_stream("/etc/passwd", "r", X), read_stream(X, 10, Y).

    close/1

    書式close(+Handle)
    引数
    +Handlehandle_stream ストリームハンドル
    注意 述語が失敗するのは次の場合です。
    • ストリームハンドルが無効であったとき.
    ストリームを閉じます.
    > :- close(X).

    flush_output/1

    書式flush_output(+Handle)
    引数
    +Handlehandle_stream ストリームハンドル
    注意 述語が失敗するのは次の場合です。
    • ストリームハンドルが無効であったとき.
    ストリームのバッファをフラッシュします.
    > :- flush_output(X).

    eof_stream/1

    書式eof_stream(+Handle)
    引数
    +Handlehandle_stream ストリームハンドル
    注意 述語が失敗するのは次の場合です。
    • ストリームハンドルが無効であったとき.
    ストリームが終了したかどうかを判定します.
    > ?- eof_stream(X).

    stdin_stream/1

    書式stdin_stream(-Handle)
    引数
    -Handlehandle_stream ストリームハンドル
    標準入力のハンドルを返します.
    > :- stdin_stream(X).

    stdout_stream/1

    書式stdout_stream(-Handle)
    引数
    -Handlehandle_stream ストリームハンドル
    標準出力のハンドルを返します.
    > :- stdout_stream(X).

    stderr_stream/1

    書式stderr_stream(-Handle)
    引数
    -Handlehandle_stream ストリームハンドル
    標準エラー出力のハンドルを返します.
    > :- stderr_stream(X).

    Top of this page Contents Index of this package LiLFeS Documents LiLFeS Home Page Tsujii laboratory

    This document is automatically created by lildoc on Fri Sep 24 14:14:00 2004