GENERATE_LATEX = YES
FULL_PATH_NAMES = YES
STRIP_FROM_PATH = ../Library/
+ENABLED_SECTIONS = YES
--- /dev/null
+# $Id$
+
+PROJECT_NAME = LibW3
+OUTPUT_DIRECTORY = doc
+TAB_SIZE = 8
+OPTIMIZE_OUTPUT_FOR_C = YES
+MARKDOWN_SUPPORT = YES
+EXTRACT_ALL = NO
+FILE_PATTERNS = *.h *.c *.md
+INPUT = ../Library
+SOURCE_BROWSER = YES
+HTML_DYNAMIC_MENUS = YES
+GENERATE_TREEVIEW = YES
+EXCLUDE_SYMBOLS = __* strcasecmp
+FULL_SIDEBAR = NO
+DISABLE_INDEX = NO
+HTML_EXTRA_STYLESHEET = doxygen-theme/doxygen-awesome.css
+HTML_COLORSTYLE = LIGHT
+PROJECT_LOGO = ../w3.png
+PROJECT_BRIEF = WWW Library
+GENERATE_MAN = YES
+GENERATE_LATEX = NO
+EXAMPLE_PATH = ../Example
+EXAMPLE_RECURSIVE = YES
+EXAMPLE_PATTERNS = *.c
+INPUT += index.md
+USE_MDFILE_AS_MAINPAGE = index.md
+GENERATE_LATEX = YES
+FULL_PATH_NAMES = YES
+STRIP_FROM_PATH = ../Library/
+ENABLED_SECTIONS = YES
+OUTPUT_LANGUAGE = Japanese
Welcome to the documentation of LibW3
-\example fetch.c
-\example interactive.c
-\example pop3-list.c
-\example w3b.c
-\example tclw3.c
-\example ftp-list.c
-\example nntp-list.c
-\example httpd.c
+@example fetch.c
+@example interactive.c
+@example pop3-list.c
+@example w3b.c
+@example tclw3.c
+@example ftp-list.c
+@example nntp-list.c
+@example httpd.c
/**
* @file W3Core.h
+ * @~english
* @brief Core of LibW3
+ *
+ * @~japanese
+ * @brief LibW3のコア部分
+ *
*/
#ifdef __cplusplus
#include "W3Version.h"
/**
- * @warning
- * This struct is not intended to be used directly!
+ * @~english
+ * @warning This struct is not intended to be used directly!
+ *
+ * @~japanese
+ * @warning この構造体は直接使うことを想定されていません!
+ *
*/
struct W3 {
int sock;
};
/**
+ * @~english
* @brief Initializes LibW3.
* @return
* - `0` if successful.
* - `<0` if not.
+ *
+ * @~japanese
+ * @brief LibW3を初期化します。
+ * @return
+ * - 成功した場合は`0`。
+ * - それ以外の場合は`<0`。
+ *
*/
int W3_Library_Init(void);
/**
+ * @~english
* @brief Creates the W3 struct.
* @param protocol Protocol
* @param hostname Hostname
* @return
* - non-`NULL` if successful.
* - `NULL` if not.
+ *
+ * @~japanese
+ * @brief 構造体 W3 を作ります。
+ * @param protocol プロトコル名
+ * @param hostname ホスト名
+ * @param port ポート
+ * @return
+ * - 成功した場合は`NULL`以外。
+ * - それ以外の場合は`NULL`。
+ *
*/
struct W3* W3_Create(const char* protocol, const char* hostname, int port);
/**
+ * @~english
* @brief Sets the method, or the command name.
* @param w3 Pointer to the struct
* @param method Method, or command name
+ *
+ * @~japanese
+ * @brief メソッドかコマンド名を設定します。
+ * @param w3 構造体へのポインター
+ * @param method メソッドかコマンド名
+ *
*/
void W3_Set_Method(struct W3* w3, const char* method);
/**
+ * @~english
* @brief Sets the path, or the argument.
* @param w3 Pointer to the struct
* @param path Path, or argument
+ *
+ * @~japanese
+ * @brief パスか引数を設定します。
+ * @param w3 構造体へのポインター
+ * @param path パスか引き数
+ *
*/
void W3_Set_Path(struct W3* w3, const char* path);
/**
+ * @~english
* @brief Sends the request, or just handshake.
* @param w3 Pointer to the struct
+ *
+ * @~japanese
+ * @brief リクエストを送るか、単にハンドシェイクします。
+ * @param w3 構造体へのポインター
+ *
*/
void W3_Send_Request(struct W3* w3);
/**
+ * @~english
* @brief Sets the header.
* @param w3 Pointer to the struct
* @param key Header key
* @param value Header value
+ *
+ * @~japanese
+ * @brief ヘッダーを設定します。
+ * @param w3 構造体へのポインター
+ * @param key ヘッダーのキー
+ * @param value ヘッダーの値
+ *
*/
void W3_Set_Header(struct W3* w3, const char* key, const char* value);
/**
+ * @~english
* @brief Frees the struct.
* @param w3 Pointer to the struct
+ *
+ * @~japanese
+ * @brief 構造体を解放します。
+ * @param w3 構造体へのポインター
+ *
*/
void W3_Free(struct W3* w3);
/**
+ * @~english
* @brief Sets the event handler.
* @param w3 Pointer to the struct
* @param eventname Event name
* @param func Function pointer
+ *
+ * @~japanese
+ * @brief イベントハンドラーを設定します。
+ * @param w3 構造体へのポインター
+ * @param eventname イベント名
+ * @param func 関数ポインター
+ *
*/
void W3_On(struct W3* w3, const char* eventname, void* func);
/**
+ * @~english
* @brief Force-disconnects from the server.
* @param w3 Pointer to the struct
+ *
+ * @~japanese
+ * @brief 強制的にサーバーから切断します。
+ * @param w3 構造体へのポインター
+ *
*/
void W3_Disconnect(struct W3* w3);
/**
+ * @~english
* @brief Sets the data to be sent.
* @param w3 Pointer to the struct
* @param data Data
* @param size Size of the data
+ *
+ * @~japanese
+ * @brief 送信するデータを設定します。
+ * @param w3 構造体へのポインター
+ * @param data データ
+ * @param size データのサイズ
+ *
*/
void W3_Set_Data(struct W3* w3, char* data, size_t size);
/**
+ * @~english
* @brief Sets the read buffer size.
* @param w3 Pointer to the struct
* @param size Size of the read buffer
* @note This method must be called before the W3_Send_Request.
+ *
+ * @~japanese
+ * @brief 読み込みバッファーのサイズを設定します。
+ * @param w3 構造体へのポインター
+ * @param size 読み込みバッファーのサイズ
+ * @note この関数は W3_Send_Request の前に呼ばれる必要があります。
+ *
*/
void W3_Set_Read_Size(struct W3* w3, size_t size);
/**
* @file W3FTP.h
+ * @~english
* @brief FTP part of LibW3
+ *
+ * @~japanese
+ * @brief LibW3のFTP処理部分
+ *
*/
#ifdef __cplusplus
void __W3_FTP_Request(struct W3* w3);
/**
+ * @~english
* @brief Sets the username of the FTP connection.
* @param w3 Pointer to the struct
* @param username FTP username
+ *
+ * @~japanese
+ * @brief FTP接続のユーザー名を設定します。
+ * @param w3 構造体へのポインター
+ * @param username FTPのユーザー名
+ *
*/
void W3_FTP_Set_Username(struct W3* w3, const char* username);
/**
+ * @~english
* @brief Sets the password of the FTP connection.
* @param w3 Pointer to the struct
* @param password FTP password
+ *
+ * @~japanese
+ * @brief FTP接続のパスワードを設定します。
+ * @param w3 構造体へのポインター
+ * @param password FTPのパスワード
+ *
*/
void W3_FTP_Set_Password(struct W3* w3, const char* password);
/**
+ * @~english
* @brief Sends the FTP command.
* @param w3 Pointer to the struct
* @note This function is different with W3_Send_Request!
* @note When W3_Send_Request just handshakes, this function sends the FTP command!
+ *
+ * @~japanese
+ * @brief FTPのコマンドを送ります。
+ * @param w3 構造体へのポインター
+ * @note この関数は W3_Send_Request とは違います!
+ * @note W3_Send_Request は単純にハンドシェイクするだけですが、この関数はFTPのコマンドを送ります!
+ *
*/
void W3_FTP_Send_Request(struct W3* w3);
/**
+ * @~english
* @brief Disconnects from the FTP.
* @param w3 Pointer to the struct
+ *
+ * @~japanese
+ * @brief FTPから切断します。
+ * @param w3 構造体へのポインター
+ *
*/
void W3_FTP_Disconnect(struct W3* w3);
/**
* @file W3HTTP.h
+ * @~english
* @brief HTTP part of LibW3
+ *
+ * @~japanese
+ * @brief LibW3のHTTP処理部分
+ *
*/
#ifdef __cplusplus
void __W3_HTTP_Request(struct W3* w3);
/**
+ * @~english
* @brief Enables the redirect.
* @param w3 Pointer to the struct
+ *
+ * @~japanese
+ * @brief リダイレクトを有効化します。
+ * @param w3 構造体へのポインター
+ *
*/
void W3_HTTP_Enable_Redirect(struct W3* w3);
/**
* @file W3IRC.h
+ * @~english
* @brief IRC part of LibW3
+ *
+ * @~japanese
+ * @brief LibW3のIRC処理部分
+ *
*/
#ifdef __cplusplus
void __W3_IRC_Request(struct W3* w3);
/**
+ * @~english
* @brief Sets the username of the IRC connection.
* @param w3 Pointer to the struct
* @param username IRC username
+ *
+ * @~japanese
+ * @brief IRC接続のユーザー名を設定します。
+ * @param w3 構造体へのポインター
+ * @param username IRCのユーザー名
+ *
*/
void W3_IRC_Set_Username(struct W3* w3, const char* username);
/**
+ * @~english
* @brief Sets the hostname of the IRC connection.
* @param w3 Pointer to the struct
* @param hostname IRC hostname
+ *
+ * @~japanese
+ * @brief IRC接続のホスト名を設定します。
+ * @param w3 構造体へのポインター
+ * @param hostname IRCのホスト名
+ *
*/
void W3_IRC_Set_Hostname(struct W3* w3, const char* hostname);
/**
+ * @~english
* @brief Sets the realname of the IRC connection.
* @param w3 Pointer to the struct
* @param realname IRC realname
+ *
+ * @~japanese
+ * @brief IRC接続のリアル名を設定します。
+ * @param w3 構造体へのポインター
+ * @param realname IRCのリアル名
+ *
*/
void W3_IRC_Set_Realname(struct W3* w3, const char* realname);
/**
+ * @~english
* @brief Sets the servername of the IRC connection.
* @param w3 Pointer to the struct
* @param servername IRC servername
+ *
+ * @~japanese
+ * @brief IRC接続のサーバー名を設定します。
+ * @param w3 構造体へのポインター
+ * @param servername IRCのサーバー名
+ *
*/
void W3_IRC_Set_Servername(struct W3* w3, const char* servername);
/**
+ * @~english
* @brief Sets the nickname of the IRC connection.
* @param w3 Pointer to the struct
* @param nickname IRC nickname
+ *
+ * @~japanese
+ * @brief IRC接続のニックネームを設定します。
+ * @param w3 構造体へのポインター
+ * @param nickname IRCのニックネーム
+ *
*/
void W3_IRC_Set_Nickname(struct W3* w3, const char* nickname);
/**
+ * @~english
* @brief Sets the password of the IRC connection.
* @param w3 Pointer to the struct
* @param password IRC password
+ *
+ * @~japanese
+ * @brief IRC接続のパスワードを設定します。
+ * @param w3 構造体へのポインター
+ * @param password IRCのパスワード
+ *
*/
void W3_IRC_Set_Password(struct W3* w3, const char* password);
/**
+ * @~english
* @brief Sends the IRC command.
* @param w3 Pointer to the struct
* @note This function is different with W3_Send_Request!
* @note When W3_Send_Request just handshakes, this function sends the IRC command!
+ *
+ * @~japanese
+ * @brief IRCのコマンドを送ります。
+ * @note この関数は W3_Send_Request とは違います!
+ * @note W3_Send_Request は単純にハンドシェイクするだけですが、この関数はIRCのコマンドを送ります!
+ *
*/
void W3_IRC_Send_Request(struct W3* w3);
/**
+ * @~english
* @brief Disconnects from the IRC.
* @param w3 Pointer to the struct
+ *
+ * @~japanese
+ * @brief IRCから切断します。
+ * @param w3 構造体へのポインター
+ *
*/
void W3_IRC_Disconnect(struct W3* w3);
/**
* @file W3NNTP.h
+ * @~english
* @brief NNTP part of LibW3
+ *
+ * @~japanese
+ * @brief LibW3のNNTP処理部分
+ *
*/
#ifdef __cplusplus
void __W3_NNTP_Request(struct W3* w3);
/**
+ * @~english
* @brief Sends the NNTP command.
* @param w3 Pointer to the struct
* @note This function is different with W3_Send_Request!
* @note When W3_Send_Request just handshakes, this function sends the NNTP command!
+ *
+ * @~japanese
+ * @brief NNTPのコマンドを送ります。
+ * @param w3 構造体へのポインター
+ * @note この関数は W3_Send_Request とは違います!
+ * @note W3_Send_Request は単純にハンドシェイクするだけですが、この関数はFTPのコマンドを送ります!
+ *
*/
void W3_NNTP_Send_Request(struct W3* w3);
/**
+ * @~english
* @brief Disconnects from the NNTP.
* @param w3 Pointer to the struct
+ *
+ * @~japanese
+ * @brief NNTPから切断します。
+ * @param w3 構造体へのポインター
+ *
*/
void W3_NNTP_Disconnect(struct W3* w3);
/**
* @file W3POP3.h
+ * @~english
* @brief POP3 part of LibW3
* @deprecated Nishi might abandon this
+ *
+ * @~japanese
+ * @brief LibW3のPOP3処理部分
+ * @deprecated Nishiが廃止するかもしれません
+ *
*/
#ifdef __cplusplus
void __W3_POP3_Request(struct W3* w3);
/**
+ * @~english
* @brief Sets the username of the POP3 connection.
* @param w3 Pointer to the struct
* @param username POP3 username
+ *
+ * @~japanese
+ * @brief POP3接続のユーザー名を設定します。
+ * @param w3 構造体へのポインター
+ * @param username POP3のユーザー名
+ *
*/
void W3_POP3_Set_Username(struct W3* w3, const char* username);
/**
- * @brief Sets the username of the POP3 connection.
+ * @~english
+ * @brief Sets the password of the POP3 connection.
* @param w3 Pointer to the struct
- * @param username POP3 username
+ * @param password POP3 password
+ *
+ * @~japanese
+ * @brief POP3接続のパスワードを設定します。
+ * @param w3 構造体へのポインター
+ * @param password POP3のパスワード
+ *
*/
void W3_POP3_Set_Password(struct W3* w3, const char* password);
/**
+ * @~english
* @brief Sends the POP3 command.
* @param w3 Pointer to the struct
* @note This function is different with W3_Send_Request!
* @note When W3_Send_Request just handshakes, this function sends the POP3 command!
+ *
+ * @~japanese
+ * @brief POP3のコマンドを送ります。
+ * @param w3 構造体へのポインター
+ * @note この関数は W3_Send_Request とは違います!
+ * @note W3_Send_Request は単純にハンドシェイクするだけですが、この関数はPOP3のコマンドを送ります!
+ *
*/
void W3_POP3_Send_Request(struct W3* w3);
/**
+ * @~english
* @brief Disconnects from the POP3.
* @param w3 Pointer to the struct
+ *
+ * @~japanese
+ * @brief POP3から切断します。
+ * @param w3 構造体へのポインター
+ *
*/
void W3_POP3_Disconnect(struct W3* w3);
/**
* @file W3Tag.h
+ * @~english
* @brief Tag parser
+ *
+ * @~japanese
+ * @brief タグのパーサー
+ *
*/
#ifdef __cplusplus
#include <stddef.h>
/**
+ * @~english
* @brief Parses the data.
* @param data Data to be parsed
* @param size Size of the data
* @param tagfunc.attr Tag attributes
* @param textfunc Function to be called when the parser hits a text
* @param textfunc.data Text
+ *
+ * @~japanese
+ * @brief データをパースします。
+ * @param data パースされるデータ
+ * @param size データのサイズ
+ * @param tagfunc パーサーがタグを見つけた時に呼ばれる関数ポインター
+ * @param tagfunc.tagname タグ名
+ * @param tagfunc.attr タグの属性
+ * @param textfunc パーサーがテキストを見つけた時に呼ばれる関数ポインター
+ * @param textfunc.data テキスト
+ *
*/
void W3_Tag_Parse(char* data, size_t size, void (*tagfunc)(char* tagname, char* attr), void (*textfunc)(char* data));
/**
+ * @~english
* @brief Gets the attribute.
* @param data Data to be parsed
* @param name Attribute name
* @return
* - non-`NULL` if it could find the attribute
* - `NULL` if it couldn't
+ *
+ * @~japanese
+ * @brief 属性を取得します。
+ * @param data パースされるデータ
+ * @param name 取得したい属性名
+ * @return
+ * - 見つかった場合は`NULL`以外。
+ * - それ以外の場合は`NULL`。
+ *
*/
char* W3_Tag_Attr(char* data, const char* name);
/**
* @file W3Tcl.h
+ * @~english
* @brief Tcl binding
+ *
+ * @~japanese
+ * @brief Tclのバインディング
+ *
*/
#ifdef __cplusplus
#include <tcl.h>
/**
- * @brief Initializes LibW3 for Tcl
+ * @~english
+ * @brief Initializes LibW3 for Tcl.
* @param interp Tcl interpreter
* @return Tcl error code
+ *
+ * @~japanese
+ * @brief Tcl用にLibW3を初期化します。
+ * @param interp Tclのインタプリター
+ * @return Tclのエラーコード
+ *
*/
int W3_Init(Tcl_Interp* interp);
/**
* @file W3URL.h
+ * @~english
* @brief URL parser
+ *
+ * @~japanese
+ * @brief URLパーサー
+ *
*/
#ifdef __cplusplus
#endif
/**
+ * @~english
* @brief URL struct
+ * @note In the future it would be able to get attribute using functions. Probably.
+ *
+ * @~japanese
+ * @brief URL構造体
+ * @note 将来的には関数で属性を取得できるようになると思います。多分。
+ *
*/
struct W3URL {
/**
+ * @~english
* @brief Protocol
+ *
+ * @~japanese
+ * @brief プロトコル名
+ *
*/
char* protocol;
/**
+ * @~english
* @brief Host
+ *
+ * @~japanese
+ * @brief ホスト名
+ *
*/
char* host;
/**
+ * @~english
* @brief Port
+ *
+ * @~japanese
+ * @brief ポート
+ *
*/
int port;
/**
+ * @~english
* @brief Path
+ *
+ * @~japanese
+ * @brief パス
+ *
*/
char* path;
/**
+ * @~english
* @brief Username
* @note `NULL` if the parser could not find the username.
+ *
+ * @~japanese
+ * @brief ユーザー名
+ * @note パーサーがユーザー名を見つけられなかった場合`NULL`が返ります。
+ *
*/
char* username;
/**
+ * @~english
* @brief Password
* @note `NULL` if the parser could not find the password.
+ *
+ * @~japanese
+ * @brief パスワード
+ * @note パーサーがパスワードを見つけられなかった場合`NULL`が返ります。
+ *
*/
char* password;
};
/**
+ * @~english
* @brief Parses the URL.
* @param url URL
* @return
* - non-`NULL` if successful.
* - `NULL` if not.
+ *
+ * @~japanese
+ * @brief URLをパースします。
+ * @param url URL
+ * @return
+ * - 成功した場合は`NULL`以外。
+ * - それ以外の場合は`NULL`。
+ *
*/
struct W3URL* W3_Parse_URL(const char* url);
/**
+ * @~english
* @brief Frees the struct.
* @param url Pointer to the struct
+ *
+ * @~japanese
+ * @brief 構造体を解放します。
+ * @param url 構造体へのポインター
+ *
*/
void W3_Free_URL(struct W3URL* url);
/**
* @file W3Util.h
+ * @~english
* @brief LibW3 utilities
+ *
+ * @~japanese
+ * @brief LibW3のユーティリティー
+ *
*/
#ifdef __cplusplus
#include <stdbool.h>
/**
+ * @~english
* @brief Turn on/off debugging.
* @param do_debug Do debugging or not
+ *
+ * @~japanese
+ * @brief デバッグを有効化/無効化します。
+ * @param do_debug デバッグの有無
+ *
*/
void W3_Do_Debug(bool do_debug);
void __W3_Debug(const char* title, const char* message);
/* OF SUCH DAMAGE. */
/* -------------------------------------------------------------------------- */
/* --- END LICENSE --- */
+changequote(`{{', `}}')
#ifndef __W3VERSION_H__
#define __W3VERSION_H__
/**
* @file W3Version.h
+ * @~english
* @brief LibW3 info
+ *
+ * @~japanese
+ * @brief LibW3の情報
+ *
*/
#ifdef __cplusplus
#endif
/**
- * Version of LibW3, but consider doing extern const char* W3_Version;
+ * @~english
+ * @brief Version of LibW3
+ * @note Consider doing `extern const char* W3_Version;`
+ *
+ * @~japanese
+ * @brief LibW3のバージョン
+ * @note `extern const char* W3_Version;`をすることを検討してください。
+ *
*/
#define LIBW3_VERSION "2.21B" \
SUFFIX
-ifdef(`HTTP_SUPPORT', `/**
- * Defined if HTTP support is enabled
+ifdef({{HTTP_SUPPORT}}, {{/**
+ * @~english
+ * @brief Defined if HTTP support is enabled
+ *
+ * @~japanese
+ * @brief HTTPサポートが有効化されてる場合に定義
+ *
*/
-#define LIBW3_HTTP_SUPPORT', `')
-ifdef(`FTP_SUPPORT', `/**
- * Defined if FTP support is enabled
+#define LIBW3_HTTP_SUPPORT}}, {{}})
+
+ifdef({{FTP_SUPPORT}}, {{/**
+ * @~english
+ * @brief Defined if FTP support is enabled
+ *
+ * @~japanese
+ * @brief FTPサポートが有効化されてる場合に定義
+ *
*/
-#define LIBW3_FTP_SUPPORT', `')
-ifdef(`GOPHER_SUPPORT', `/**
- * Defined if Gopher suppport is enabled
+#define LIBW3_FTP_SUPPORT}}, {{}})
+
+ifdef({{GOPHER_SUPPORT}}, {{/**
+ * @~english
+ * @brief Defined if Gopher suppport is enabled
+ *
+ * @~japanese
+ * @brief Gopherサポートが有効化されてる場合に定義
+ *
*/
-#define LIBW3_GOPHER_SUPPORT', `')
-ifdef(`GEMINI_SUPPORT', `/**
- * Defined if Gemini support is enabled
+#define LIBW3_GOPHER_SUPPORT}}, {{}})
+
+ifdef({{GEMINI_SUPPORT}}, {{/**
+ * @~english
+ * @brief Defined if Gemini support is enabled
+ *
+ * @~japanese
+ * @brief Geminiサポートが有効化されてる場合に定義
+ *
*/
-#define LIBW3_GEMINI_SUPPORT', `')
-ifdef(`FINGER_SUPPORT', `/**
- * Defined if Finger support is enabled
+#define LIBW3_GEMINI_SUPPORT}}, {{}})
+
+ifdef({{FINGER_SUPPORT}}, {{/**
+ * @~english
+ * @brief Defined if Finger support is enabled
+ *
+ * @~japanese
+ * @brief Fingerサポートが有効化されてる場合に定義
+ *
*/
-#define LIBW3_FINGER_SUPPORT', `')
-ifdef(`NEX_SUPPORT', `/**
- * Defined if Nex support is enabled
+#define LIBW3_FINGER_SUPPORT}}, {{}})
+
+ifdef({{NEX_SUPPORT}}, {{/**
+ * @~english
+ * @brief Defined if Nex support is enabled
+ *
+ * @~japanese
+ * @brief Nexサポートが有効化されてる場合に定義
+ *
*/
-#define LIBW3_NEX_SUPPORT', `')
-ifdef(`FILE_SUPPORT', `/**
- * Defined if File support is enabled
+#define LIBW3_NEX_SUPPORT}}, {{}})
+
+ifdef({{FILE_SUPPORT}}, {{/**
+ * @~english
+ * @brief Defined if File support is enabled
+ *
+ * @~japanese
+ * @brief Fileサポートが有効化されてる場合に定義
+ *
*/
-#define LIBW3_FILE_SUPPORT', `')
-ifdef(`IRC_SUPPORT', `/**
- * Defined if IRC support is enabled
+#define LIBW3_FILE_SUPPORT}}, {{}})
+
+ifdef({{IRC_SUPPORT}}, {{/**
+ * @~english
+ * @brief Defined if IRC support is enabled
+ *
+ * @~japanese
+ * @brief IRCサポートが有効化されてる場合に定義
+ *
*/
-#define LIBW3_IRC_SUPPORT', `')
-ifdef(`NNTP_SUPPORT', `/**
- * Defined if NNTP support is enabled
+#define LIBW3_IRC_SUPPORT}}, {{}})
+
+ifdef({{NNTP_SUPPORT}}, {{/**
+ * @~english
+ * @brief Defined if NNTP support is enabled
+ *
+ * @~japanese
+ * @brief NNTPサポートが有効化されてる場合に定義
+ *
*/
-#define LIBW3_NNTP_SUPPORT', `')
-ifdef(`SPARTAN_SUPPORT', `/**
- * Defined if Spartan support is enabled
+#define LIBW3_NNTP_SUPPORT}}, {{}})
+
+ifdef({{SPARTAN_SUPPORT}}, {{/**
+ * @~english
+ * @brief Defined if Spartan support is enabled
+ *
+ * @~japanese
+ * @brief Spartanサポートが有効化されてる場合に定義
+ *
*/
-#define LIBW3_SPARTAN_SUPPORT', `')
+#define LIBW3_SPARTAN_SUPPORT}}, {{}})
#ifdef __cplusplus
}