added more documentation with some code fix
This commit is contained in:
		| @ -52,7 +52,7 @@ static const qse_char_t* dflerrstr (qse_sed_t* sed, qse_sed_errnum_t errnum) | ||||
| 		QSE_T("failed to compile regular expression '${0}'"), | ||||
| 		QSE_T("failed to match regular expression"), | ||||
| 		QSE_T("address 1 prohibited for '${0}'"), | ||||
| 		QSE_T("address 2 prohibited"), | ||||
| 		QSE_T("address 2 prohibited for '${0}'"), | ||||
| 		QSE_T("address 2 missing or invalid"), | ||||
| 		QSE_T("newline expected"), | ||||
| 		QSE_T("backslash expected"), | ||||
| @ -1139,7 +1139,10 @@ static int get_command (qse_sed_t* sed, qse_sed_cmd_t* cmd) | ||||
| 			if (sed->option & QSE_SED_CLASSIC && | ||||
| 			    cmd->a2.type != QSE_SED_ADR_NONE) | ||||
| 			{ | ||||
| 				SETERR0 (sed, QSE_SED_EA2PHB, sed->src.lnum); | ||||
| 				SETERR1 ( | ||||
| 					sed, QSE_SED_EA2PHB, | ||||
| 					sed->src.lnum, &cmd->type, 1 | ||||
| 				); | ||||
| 				return -1; | ||||
| 			} | ||||
|  | ||||
| @ -1149,6 +1152,16 @@ static int get_command (qse_sed_t* sed, qse_sed_cmd_t* cmd) | ||||
|  | ||||
| 		case QSE_T('a'): | ||||
| 		case QSE_T('i'): | ||||
| 			if (sed->option & QSE_SED_CLASSIC && | ||||
| 			    cmd->a2.type != QSE_SED_ADR_NONE) | ||||
| 			{ | ||||
| 				qse_char_t tmpc = c; | ||||
| 				SETERR1 ( | ||||
| 					sed, QSE_SED_EA2PHB, | ||||
| 					sed->src.lnum, &tmpc, 1 | ||||
| 				); | ||||
| 				return -1; | ||||
| 			} | ||||
| 		case QSE_T('c'): | ||||
| 		{ | ||||
| 			cmd->type = c; | ||||
| @ -1186,16 +1199,21 @@ static int get_command (qse_sed_t* sed, qse_sed_cmd_t* cmd) | ||||
| 			if (sed->option & QSE_SED_CLASSIC && | ||||
| 			    cmd->a2.type != QSE_SED_ADR_NONE) | ||||
| 			{ | ||||
| 				SETERR0 (sed, QSE_SED_EA2PHB, sed->src.lnum); | ||||
| 				qse_char_t tmpc = c; | ||||
| 				SETERR1 ( | ||||
| 					sed, QSE_SED_EA2PHB, | ||||
| 					sed->src.lnum, &tmpc, 1 | ||||
| 				); | ||||
| 				return -1; | ||||
| 			} | ||||
| 		case QSE_T('p'): | ||||
| 		case QSE_T('P'): | ||||
| 		case QSE_T('l'): | ||||
|  | ||||
| 		case QSE_T('d'): | ||||
| 		case QSE_T('D'): | ||||
|  | ||||
| 		case QSE_T('p'): | ||||
| 		case QSE_T('P'): | ||||
| 		case QSE_T('l'): | ||||
|  | ||||
| 		case QSE_T('h'): | ||||
| 		case QSE_T('H'): | ||||
| 		case QSE_T('g'): | ||||
| @ -1326,7 +1344,8 @@ int qse_sed_comp (qse_sed_t* sed, const qse_char_t* sptr, qse_size_t slen) | ||||
| 						return -1; | ||||
| 					} | ||||
| 				} | ||||
| 				else if (delim == QSE_T('~')) | ||||
| 				else if (!(sed->option & QSE_SED_CLASSIC) &&  | ||||
| 				         (delim == QSE_T('~'))) | ||||
| 				{ | ||||
| 					if (cmd->a1.type != QSE_SED_ADR_LINE ||  | ||||
| 					    cmd->a2.type != QSE_SED_ADR_LINE) | ||||
|  | ||||
		Reference in New Issue
	
	Block a user