errors.c

Go to the documentation of this file.
00001 /*
00002  * This file is part of LibParserUtils.
00003  * Licensed under the MIT License,
00004  *                http://www.opensource.org/licenses/mit-license.php
00005  * Copyright 2007 John-Mark Bell <jmb@netsurf-browser.org>
00006  */
00007 
00008 #include <string.h>
00009 
00010 #include <parserutils/errors.h>
00011 
00018 const char *parserutils_error_to_string(parserutils_error error)
00019 {
00020         const char *result = NULL;
00021 
00022         switch (error) {
00023         case PARSERUTILS_OK:
00024                 result = "No error";
00025                 break;
00026         case PARSERUTILS_NOMEM:
00027                 result = "Insufficient memory";
00028                 break;
00029         case PARSERUTILS_BADPARM:
00030                 result = "Bad parameter";
00031                 break;
00032         case PARSERUTILS_INVALID:
00033                 result = "Invalid input";
00034                 break;
00035         case PARSERUTILS_FILENOTFOUND:
00036                 result = "File not found";
00037                 break;
00038         case PARSERUTILS_NEEDDATA:
00039                 result = "Insufficient data";
00040                 break;
00041         case PARSERUTILS_BADENCODING:
00042                 result = "Unsupported encoding";
00043                 break;
00044         case PARSERUTILS_EOF:
00045                 result = "EOF";
00046                 break;
00047         }
00048 
00049         return result;
00050 }
00051 
00059 parserutils_error parserutils_error_from_string(const char *str, size_t len)
00060 {
00061         if (strncmp(str, "PARSERUTILS_OK", len) == 0) {
00062                 return PARSERUTILS_OK;
00063         } else if (strncmp(str, "PARSERUTILS_NOMEM", len) == 0) {
00064                 return PARSERUTILS_NOMEM;
00065         } else if (strncmp(str, "PARSERUTILS_BADPARM", len) == 0) {
00066                 return PARSERUTILS_BADPARM;
00067         } else if (strncmp(str, "PARSERUTILS_INVALID", len) == 0) {
00068                 return PARSERUTILS_INVALID;
00069         } else if (strncmp(str, "PARSERUTILS_FILENOTFOUND", len) == 0) {
00070                 return PARSERUTILS_FILENOTFOUND;
00071         } else if (strncmp(str, "PARSERUTILS_NEEDDATA", len) == 0) {
00072                 return PARSERUTILS_NEEDDATA;
00073         } else if (strncmp(str, "PARSERUTILS_BADENCODING", len) == 0) {
00074                 return PARSERUTILS_BADENCODING;
00075         } else if (strncmp(str, "PARSERUTILS_EOF", len) == 0) {
00076                 return PARSERUTILS_EOF;
00077         }
00078 
00079         return PARSERUTILS_OK;
00080 }

Generated on Wed Jul 29 11:59:21 2015 for Libparserutils by  doxygen 1.5.6