cshiori
1
|
SHIOLINKインターフェース [詳解]
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "bool.h"
#include "cshiori.h"
#include "strutl.h"
マクロ定義 | |
#define | CSHIOLINK_REQUEST_LINES_BUFFER_STEP 10 |
cshiolink_request() で一度に確保する行バッファ | |
関数 | |
bool | cshiolink_load (const char *dirpath, bool(*load)(const char *)) |
SHIORI/3.x load. [詳解] | |
char * | cshiolink_request (FILE *in, struct cshiori_response_message *(*request)(struct cshiori_request_message *, struct cshiori_response_message *)) |
SHIORI/3.x request. [詳解] | |
bool | cshiolink_unload (bool(*unload)(void)) |
SHIORI/3.x unload. [詳解] | |
void | cshiolink_mainloop (FILE *in, FILE *out, bool(*load)(const char *), struct cshiori_response_message *(*request)(struct cshiori_request_message *, struct cshiori_response_message *), bool(*unload)(void)) |
メインループ [詳解] | |
SHIOLINKインターフェース
(C) 2014 Narazaka : Licensed under The MIT License - http://narazaka.net/license/MIT?2014
bool cshiolink_load | ( | const char * | dirpath, |
bool(*)(const char *) | load | ||
) |
SHIORI/3.x load.
load()を実行します。
通常 cshiolink_mainloop() から呼ばれます。
dirpath | SHIORIのディレクトリパス |
load | load()関数へのポインタ |
load()関数は
です。
void cshiolink_mainloop | ( | FILE * | in, |
FILE * | out, | ||
bool(*)(const char *) | load, | ||
struct cshiori_response_message *(*)(struct cshiori_request_message *, struct cshiori_response_message *) | request, | ||
bool(*)(void) | unload | ||
) |
char* cshiolink_request | ( | FILE * | in, |
struct cshiori_response_message *(*)(struct cshiori_request_message *, struct cshiori_response_message *) | request | ||
) |
SHIORI/3.x request.
与えられたファイルポインタ in からSHIORI/3.x Requestを読み出し、 request() 関数に渡して、戻ったSHIORI/3.x Responseを文字列にして返します。
通常 cshiolink_mainloop() から呼ばれます。
in | SHIORI/3.x Requestを読み出すファイルポインタ |
request | request()関数へのポインタ |
request()関数は
です。
入力をSHIORI/3.xとしてパースできなかった場合と、request()がNULLを返した場合は、400 Bad Requestの文字列を返します。
bool cshiolink_unload | ( | bool(*)(void) | unload | ) |
SHIORI/3.x unload.
unload()を実行します。
通常 cshiolink_mainloop() から呼ばれます。
unload | unload()関数へのポインタ |
unload()関数は
です。