\r
NyLPC_TBool NyLPC_cUrlEncode_initialize(NyLPC_TcUrlEncode_t* i_inst)\r
{\r
- i_inst->_len=0;\r
- return NyLPC_TBool_TRUE;\r
+ i_inst->_len=0;\r
+ return NyLPC_TBool_TRUE;\r
}\r
\r
\r
NyLPC_TcUrlEncode_ST NyLPC_cUrlEncode_decode(NyLPC_TcUrlEncode_t* i_inst,NyLPC_TChar c,NyLPC_TChar* out)\r
{\r
- int t;\r
- if(c=='%'){\r
- if(i_inst->_len!=0){\r
- NyLPC_OnErrorGoto(Error);\r
- }\r
- i_inst->_len=1;\r
- return NyLPC_TcUrlEncode_ST_NEXT;\r
- }else{\r
- switch(i_inst->_len){\r
- case 0:\r
- *out=c;\r
- return NyLPC_TcUrlEncode_ST_DONE;\r
- case 1:\r
- if(!isxdigit((int)c)){\r
- NyLPC_OnErrorGoto(Error);\r
- }\r
- t=NyLPC_ctox(c);\r
- i_inst->v=(NyLPC_TChar)t;//16進文字→HEX\r
- i_inst->_len++;\r
- return NyLPC_TcUrlEncode_ST_NEXT;\r
- case 2:\r
- if(!isxdigit((int)c)){\r
- NyLPC_OnErrorGoto(Error);\r
- }\r
- t=NyLPC_ctox(c);\r
- *out=(NyLPC_TChar)((i_inst->v<<4) | t);\r
- i_inst->v=0;\r
- i_inst->_len=0;\r
- return NyLPC_TcUrlEncode_ST_DONE;\r
- default:\r
- NyLPC_OnErrorGoto(Error);\r
- }\r
- }\r
+ int t;\r
+ if(c=='%'){\r
+ if(i_inst->_len!=0){\r
+ NyLPC_OnErrorGoto(Error);\r
+ }\r
+ i_inst->_len=1;\r
+ return NyLPC_TcUrlEncode_ST_NEXT;\r
+ }else{\r
+ switch(i_inst->_len){\r
+ case 0:\r
+ *out=c;\r
+ return NyLPC_TcUrlEncode_ST_DONE;\r
+ case 1:\r
+ if(!isxdigit((int)c)){\r
+ NyLPC_OnErrorGoto(Error);\r
+ }\r
+ t=NyLPC_ctox(c);\r
+ i_inst->v=(NyLPC_TChar)t;//16進文字→HEX\r
+ i_inst->_len++;\r
+ return NyLPC_TcUrlEncode_ST_NEXT;\r
+ case 2:\r
+ if(!isxdigit((int)c)){\r
+ NyLPC_OnErrorGoto(Error);\r
+ }\r
+ t=NyLPC_ctox(c);\r
+ *out=(NyLPC_TChar)((i_inst->v<<4) | t);\r
+ i_inst->v=0;\r
+ i_inst->_len=0;\r
+ return NyLPC_TcUrlEncode_ST_DONE;\r
+ default:\r
+ NyLPC_OnErrorGoto(Error);\r
+ }\r
+ }\r
Error:\r
- i_inst->v=0;\r
- i_inst->_len=0;\r
- return NyLPC_TcUrlEncode_ST_ERROR;\r
+ i_inst->v=0;\r
+ i_inst->_len=0;\r
+ return NyLPC_TcUrlEncode_ST_ERROR;\r
}\r