exception.c 3.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. /*
  2. +----------------------------------------------------------------------+
  3. | XlsWriter Extension |
  4. +----------------------------------------------------------------------+
  5. | Copyright (c) 2017-2018 The Viest |
  6. +----------------------------------------------------------------------+
  7. | http://www.viest.me |
  8. +----------------------------------------------------------------------+
  9. | Author: viest <[email protected]> |
  10. +----------------------------------------------------------------------+
  11. */
  12. #include "xlswriter.h"
  13. zend_class_entry *vtiful_exception_ce;
  14. /** {{{ exception_methods
  15. */
  16. zend_function_entry exception_methods[] = {
  17. PHP_FE_END
  18. };
  19. /* }}} */
  20. /** {{{ VTIFUL_STARTUP_FUNCTION
  21. */
  22. VTIFUL_STARTUP_FUNCTION(exception) {
  23. zend_class_entry ce;
  24. INIT_NS_CLASS_ENTRY(ce, "Vtiful\\Kernel", "Exception", exception_methods);
  25. vtiful_exception_ce = zend_register_internal_class_ex(&ce, zend_ce_exception);
  26. return SUCCESS;
  27. }
  28. /* }}} */
  29. /** {{{ exception_message_map
  30. */
  31. char* exception_message_map(int code) {
  32. switch (code) {
  33. case LXW_ERROR_MEMORY_MALLOC_FAILED:
  34. return "Memory error, failed to malloc() required memory.";
  35. case LXW_ERROR_CREATING_XLSX_FILE:
  36. return "Error creating output xlsx file. Usually a permissions error.";
  37. case LXW_ERROR_CREATING_TMPFILE:
  38. return "Error encountered when creating a tmpfile during file assembly.";
  39. case LXW_ERROR_READING_TMPFILE:
  40. return "Error reading a tmpfile.";
  41. case LXW_ERROR_ZIP_FILE_OPERATION:
  42. return "Zlib error with a file operation while creating xlsx file.";
  43. case LXW_ERROR_ZIP_FILE_ADD:
  44. return "Zlib error when adding sub file to xlsx file.";
  45. case LXW_ERROR_ZIP_CLOSE:
  46. return "Zlib error when closing xlsx file.";
  47. case LXW_ERROR_NULL_PARAMETER_IGNORED:
  48. return "NULL function parameter ignored.";
  49. case LXW_ERROR_PARAMETER_VALIDATION:
  50. return "Function parameter validation error.";
  51. case LXW_ERROR_SHEETNAME_LENGTH_EXCEEDED:
  52. return "Worksheet name exceeds Excel's limit of 31 characters.";
  53. case LXW_ERROR_INVALID_SHEETNAME_CHARACTER:
  54. return "Worksheet name contains invalid.";
  55. case LXW_ERROR_SHEETNAME_ALREADY_USED:
  56. return "Worksheet name is already in use.";
  57. case LXW_ERROR_32_STRING_LENGTH_EXCEEDED:
  58. return "Parameter exceeds Excel's limit of 32 characters.";
  59. case LXW_ERROR_128_STRING_LENGTH_EXCEEDED:
  60. return "Parameter exceeds Excel's limit of 128 characters.";
  61. case LXW_ERROR_255_STRING_LENGTH_EXCEEDED:
  62. return "Parameter exceeds Excel's limit of 255 characters.";
  63. case LXW_ERROR_MAX_STRING_LENGTH_EXCEEDED:
  64. return "String exceeds Excel's limit of 32:767 characters.";
  65. case LXW_ERROR_SHARED_STRING_INDEX_NOT_FOUND:
  66. return "Error finding internal string index.";
  67. case LXW_ERROR_WORKSHEET_INDEX_OUT_OF_RANGE:
  68. return "Worksheet row or column index out of range.";
  69. case LXW_ERROR_WORKSHEET_MAX_NUMBER_URLS_EXCEEDED:
  70. return "Maximum number of worksheet URLs (65530) exceeded.";
  71. case LXW_ERROR_IMAGE_DIMENSIONS:
  72. return "Couldn't read image dimensions or DPI.";
  73. default:
  74. return "Unknown error";
  75. }
  76. }
  77. /* }}} */