WSPutType (C 関数)

int WSPutType(WSLINK link, int type)

指定されたtype のオブジェクトを置くためにlink を準備する.

詳細

  • すべてのtype の値はMLTKで始まる.
  • 次の型がよく使われるものである:
  • WSTKERRエラー
    WSTKINT整数
    WSTKFUNC合成関数
    WSTKREAL近似実数
    WSTKSTR文字列
    WSTKSYM記号
    WSTKOLDINT古いバージョンのWSTPライブラリからの整数
    WSTKOLDREAL古いバージョンのWSTPライブラリからの近似実数
    WSTKOLDSTR古いバージョンのWSTPライブラリからの文字列
    WSTKOLDSYM古いバージョンのWSTPライブラリからの記号
  • WSTKINTWSTKREALが必ずしもC言語のint型とdouble型の変数で保持することができる数字を意味する訳ではない.
  • WSPutType()はエラーがあると0を返し,関数が成功するとゼロ以外の値を返す.
  • WSError()を使うと,WSPutType()が不成功の場合にエラーコードを引き出すことができる.
  • WSPutType()は,WSTPヘッダファイルwstp.hの中で宣言される.

例題

  (1)

#include "wstp.h"

/* send a function using tokens and argument counts to a link */

void f(WSLINK lp)
{
    if(! WSPutType(lp, WSTKFUNC))
        { /* unable to put the function type to lp */ }

    if(! WSPutArgCount(lp, 2))
        { /* unable to put the number of arguments to lp */ }

    if(! WSPutSymbol(lp, "Plus"))
        { /* unable to put the symbol to lp */ }

    if(! WSPutInteger32(lp, 2))
        { /* unable to put the integer to lp */ }

    if(! WSPutInteger32(lp, 3))
        { /* unable to put the integer to lp */ }

    if(! WSFlush(lp))
        { /* unable to flush an buffered outgoing data to lp */ }
}