\hypertarget{struct_qore_1_1_exception_info}{}\doxysection{Qore\+::Exception\+Info Struct Reference} \label{struct_qore_1_1_exception_info}\index{Qore::ExceptionInfo@{Qore::ExceptionInfo}} exception information hash \doxysubsection*{Public Attributes} \begin{DoxyCompactItemize} \item \mbox{\Hypertarget{struct_qore_1_1_exception_info_a263cbf6331936eaedf61549c8cd077e1}\label{struct_qore_1_1_exception_info_a263cbf6331936eaedf61549c8cd077e1}} auto \mbox{\hyperlink{struct_qore_1_1_exception_info_a263cbf6331936eaedf61549c8cd077e1}{arg}} \begin{DoxyCompactList}\small\item\em this key is populated with the value of the third expression of the \mbox{\hyperlink{statements_throw}{throw statement}} (if a list was thrown). For system exceptions, this is populated for some exceptions where additional information is provided. \end{DoxyCompactList}\item \mbox{\Hypertarget{struct_qore_1_1_exception_info_a07f044030191825ecfa0cd3e79b2f45f}\label{struct_qore_1_1_exception_info_a07f044030191825ecfa0cd3e79b2f45f}} \mbox{\hyperlink{group__type__conversion__functions_ga4b52a1cbee7a3aed46c32cb0a938629c}{list}}$<$ \mbox{\hyperlink{group__type__conversion__functions_ga0231dbb472dd230310af7c7c34f56e92}{hash}}$<$ \mbox{\hyperlink{struct_qore_1_1_call_stack_info}{Call\+Stack\+Info}} $>$ $>$ \mbox{\hyperlink{struct_qore_1_1_exception_info_a07f044030191825ecfa0cd3e79b2f45f}{callstack}} \begin{DoxyCompactList}\small\item\em call stack backtrace information \end{DoxyCompactList}\item \mbox{\Hypertarget{struct_qore_1_1_exception_info_a2a62f56f63533adb2b58c1564c843ff6}\label{struct_qore_1_1_exception_info_a2a62f56f63533adb2b58c1564c843ff6}} auto \mbox{\hyperlink{struct_qore_1_1_exception_info_a2a62f56f63533adb2b58c1564c843ff6}{desc}} \begin{DoxyCompactList}\small\item\em this key is populated with the value of the second expression of the \mbox{\hyperlink{statements_throw}{throw statement}} (if a list was thrown). For system exceptions, this is a string giving a text description of the error. \end{DoxyCompactList}\item \mbox{\Hypertarget{struct_qore_1_1_exception_info_ab347bc716734b7e161b8fb78fb8fd06b}\label{struct_qore_1_1_exception_info_ab347bc716734b7e161b8fb78fb8fd06b}} \mbox{\hyperlink{group__type__conversion__functions_ga2de8717e92c5f97ccc6511f6062d6502}{int}} \mbox{\hyperlink{struct_qore_1_1_exception_info_ab347bc716734b7e161b8fb78fb8fd06b}{endline}} \begin{DoxyCompactList}\small\item\em position info\+: end line number \end{DoxyCompactList}\item \mbox{\Hypertarget{struct_qore_1_1_exception_info_a56e4bb05d9123988773c291e9ad7bbfb}\label{struct_qore_1_1_exception_info_a56e4bb05d9123988773c291e9ad7bbfb}} auto \mbox{\hyperlink{struct_qore_1_1_exception_info_a56e4bb05d9123988773c291e9ad7bbfb}{err}} \begin{DoxyCompactList}\small\item\em this key is populated with the value of the first expression of the \mbox{\hyperlink{statements_throw}{throw statement}}. For system exceptions, this is a string giving the exception code. \end{DoxyCompactList}\item \mbox{\Hypertarget{struct_qore_1_1_exception_info_a8722f9f24d80f48f00d2b42512d884cb}\label{struct_qore_1_1_exception_info_a8722f9f24d80f48f00d2b42512d884cb}} \mbox{\hyperlink{group__type__conversion__functions_gacf16b4126b795f4b6933ef3425cadae3}{string}} \mbox{\hyperlink{struct_qore_1_1_exception_info_a8722f9f24d80f48f00d2b42512d884cb}{file}} \begin{DoxyCompactList}\small\item\em position info\+: the parse label where exception occurred; this is normally the file name; this corresponds to the {\itshape label} parameter of the \mbox{\hyperlink{class_qore_1_1_program_ad59f1b6ce7adaa693086e1b858cbe896}{Program\+::parse()}} and \mbox{\hyperlink{class_qore_1_1_program_ac943bad226fcf69ce5007b101828f8c1}{Program\+::parse\+Pending()}} methods and the \mbox{\hyperlink{group__misc__functions_ga11da5fd06dcfa57a48a5381268a52086}{Qore\+::parse()}} function, for example \end{DoxyCompactList}\item \mbox{\Hypertarget{struct_qore_1_1_exception_info_ac25fc801f30ff4d6638177600e0f7a8e}\label{struct_qore_1_1_exception_info_ac25fc801f30ff4d6638177600e0f7a8e}} \mbox{\hyperlink{group__type__conversion__functions_gacf16b4126b795f4b6933ef3425cadae3}{string}} \mbox{\hyperlink{struct_qore_1_1_exception_info_ac25fc801f30ff4d6638177600e0f7a8e}{lang}} \begin{DoxyCompactList}\small\item\em the language of the source code location; normally {\ttfamily \char`\"{}\+Qore\char`\"{}} \end{DoxyCompactList}\item \mbox{\Hypertarget{struct_qore_1_1_exception_info_a62d82662a0fa414764ad5ddd2d2c5075}\label{struct_qore_1_1_exception_info_a62d82662a0fa414764ad5ddd2d2c5075}} \mbox{\hyperlink{group__type__conversion__functions_ga2de8717e92c5f97ccc6511f6062d6502}{int}} \mbox{\hyperlink{struct_qore_1_1_exception_info_a62d82662a0fa414764ad5ddd2d2c5075}{line}} \begin{DoxyCompactList}\small\item\em position info\+: start line number \end{DoxyCompactList}\item \mbox{\Hypertarget{struct_qore_1_1_exception_info_a10220ed5a79445be81bfb377c166f7a1}\label{struct_qore_1_1_exception_info_a10220ed5a79445be81bfb377c166f7a1}} \mbox{\hyperlink{group__type__conversion__functions_ga0231dbb472dd230310af7c7c34f56e92}{hash}}$<$ \mbox{\hyperlink{struct_qore_1_1_exception_info}{Exception\+Info}} $>$ \mbox{\hyperlink{struct_qore_1_1_exception_info_a10220ed5a79445be81bfb377c166f7a1}{next}} \begin{DoxyCompactList}\small\item\em chained exception info \end{DoxyCompactList}\item \mbox{\Hypertarget{struct_qore_1_1_exception_info_a3f928674aa77f0e2a4df65bbed28c80e}\label{struct_qore_1_1_exception_info_a3f928674aa77f0e2a4df65bbed28c80e}} \mbox{\hyperlink{group__type__conversion__functions_ga2de8717e92c5f97ccc6511f6062d6502}{int}} \mbox{\hyperlink{struct_qore_1_1_exception_info_a3f928674aa77f0e2a4df65bbed28c80e}{offset}} \begin{DoxyCompactList}\small\item\em position info\+: line number offset for the {\ttfamily \char`\"{}source\char`\"{}} key (if known, for user code only) \end{DoxyCompactList}\item \mbox{\Hypertarget{struct_qore_1_1_exception_info_a9852e08908852f97f227786b58d8371e}\label{struct_qore_1_1_exception_info_a9852e08908852f97f227786b58d8371e}} \mbox{\hyperlink{group__type__conversion__functions_gacf16b4126b795f4b6933ef3425cadae3}{string}} \mbox{\hyperlink{struct_qore_1_1_exception_info_a9852e08908852f97f227786b58d8371e}{source}} \begin{DoxyCompactList}\small\item\em position info\+: an optional source string; if multiple sections of a file were parsed with different parse labels, then the source file name will normally go here and the \char`\"{}file\char`\"{} key will have the parse label; this corresponds to the source parameter of the \mbox{\hyperlink{class_qore_1_1_program_ad59f1b6ce7adaa693086e1b858cbe896}{Program\+::parse()}} and \mbox{\hyperlink{class_qore_1_1_program_ac943bad226fcf69ce5007b101828f8c1}{Program\+::parse\+Pending()}} methods, for example (if known, for user code only) \end{DoxyCompactList}\item \mbox{\Hypertarget{struct_qore_1_1_exception_info_ac1fa44325ded882f0eda1572361870f9}\label{struct_qore_1_1_exception_info_ac1fa44325ded882f0eda1572361870f9}} \mbox{\hyperlink{group__type__conversion__functions_gacf16b4126b795f4b6933ef3425cadae3}{string}} \mbox{\hyperlink{struct_qore_1_1_exception_info_ac1fa44325ded882f0eda1572361870f9}{type}} \begin{DoxyCompactList}\small\item\em exception type\+: {\ttfamily \char`\"{}\+User\char`\"{}} or {\ttfamily \char`\"{}\+System\char`\"{}}; see \mbox{\hyperlink{group__exception__type__constants}{Exception Type Constants}} \end{DoxyCompactList}\end{DoxyCompactItemize} \doxysubsection{Detailed Description} exception information hash \begin{DoxySince}{Since} Qore 0.\+8.\+13 \end{DoxySince}