root/lang/gauche/cabocha-gauche-0.60pre4/cabochalib.stub @ 86

Revision 86, 4.2 kB (checked in by naoya_t, 16 years ago)

cabocha-gauche

RevLine 
[86]1;;;
2;;; cabochalib.stub
3;;;
4
5"
6#include <gauche.h>
7#include <gauche/extend.h>
8
9#include <cabocha.h>
10#include \"cabocha.h\"
11"
12
13;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
14
15(define-cclass <cabocha> "ScmCaboCha*" "Scm_CaboChaClass" () ())
16
17(define-type <cabocha-t> "cabocha_t*" "cabocha_t"
18  "SCM_CABOCHAP" "unwrap_cabocha_t" "wrap_cabocha_t")
19
20;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
21
22;;cabocha_t *cabocha_new(int argc, char **argv)
23;;    cabocha のインスタンスを生成します.
24;;    引数には, C 言語の, main 関数で使用される argc, argv スタイルの引数を与えます.
25;;    この引数は, cabocha コマンドと同じ方法で処理されます.
26;;    成功すれば, cabocha_t 型のポインタが返ってきます. このポインタを通して解析を行います.
27(define-cproc cabocha-new (&rest args)
28  (expr <cabocha-t> "cabocha_call_cabocha_func(&cabocha_new,args)"))
29
30;;cabocha_t *cabocha_new2(char *arg)
31;;    cabocha のインスタンスを生成します.
32;;    引数には, 一つの文字列として表現したパラメータを与えます.
33;;    この引数は, cabocha コマンドと同じ方法で処理されますが,
34;;    文字列を解釈するルーチンが貧弱なので留意してください.
35;;    成功すれば, cabocha_t 型のポインタが返ってきます. このポインタを通して解析を行います.
36(define-cproc cabocha-new2 (arg::<const-cstring>)
37  (call <cabocha-t> "cabocha_new2"))
38
39;;char *cabocha_sparse_tostr(cabocha_t *p, char *str)
40;;    解析を行います. 引数には, cabocha_new で得られた cabocha_t 型のポインタと,
41;;    各レイヤの1解析単位を1つの文字列で表現した char 型のポインタ文字列を与えます.
42;;    デフォルトの動作ならば, 引数の文字列は生文となります.
43;;    成功すれば, 解析後の結果が char 型のポインタとして返ってきます.
44;;    戻り値のポインタが指すメモリ領域は, 呼び出し側で管理する必要はありませんが,
45;;    cabocha_sparse_tostr を呼ぶ度に上書きされます.
46;;    また, cabocha_destroy を呼ぶと解放されます.
47(define-cproc cabocha-sparse-tostr (c::<cabocha-t> str::<const-cstring>)
48  (call <const-cstring> "cabocha_sparse_tostr"))
49
50;;char *cabocha_sparse_tostr2 (cabocha_t *m, char *str, unsigned int len)
51;;    cabocha_sparse_tostr とほぼ同じですが, len にて, 解析する文の長さを指定できます.
52(define-cproc cabocha-sparse-tostr2 (c::<cabocha-t> str::<const-cstring> len::<uint>)
53  (call <const-cstring> "cabocha_sparse_tostr2"))
54;;char *cabocha_sparse_tostr3 (cabocha_t *m, char *istr,unsigned int ilen char *ostr,unsigned int olen)
55;;    cabocha_sparse_tostr2 に加え, 出力用のバッファ領域 (ostr), 及びその長さ (olen) を指定できます. ostr の領域の管理は, 呼び出し側が行います. 成功すれば, 解析後の結果が char 型のポインタとして返ってきます. これは, ostr と同じになります. もし, 解析結果の長さが olen 以上になった場合は, 解析失敗とみなし, NULL を返します.
56
57;;char *cabocha_strerror (cabocha_t* m)
58;;    エラーの内容を文字列として取得します. cabocha_sparse_tostr 等で, NULL が返ってきた場合に, cabocha_strerror を呼ぶことで, エラーの内容を取得できます. cabocha_new,cabocha_new2 のエラーは, m を NULL と指定してください.
59(define-cproc cabocha-strerror (c::<cabocha-t>)
60  (call <const-cstring> "cabocha_strerror"))
61
62;;void cabocha_destroy(cabocha_t *p)
63;;    cabocha_t 型のポインタを解放します.
64;;(define-cproc cabocha-destroy (c::<cabocha-t>)
65;;  (call <void> "cabocha_destroy"))
66(define-cproc cabocha-destroy (p::<cabocha>)
67"  if (p->c) { cabocha_destroy(p->c); p->c = NULL; }
68   SCM_RETURN(SCM_UNDEFINED); ")
69
70(define-cproc cabocha-destroyed? (c::<cabocha-t>)
71"  SCM_RETURN(SCM_MAKE_BOOL(c == NULL)); ")
72
73;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
74
75;; Local variables:
76;; mode: scheme
77;; end:
Note: See TracBrowser for help on using the browser.