Got most of the new memory architecture roughed out.
This commit is contained in:
parent
19d6b0df29
commit
604fca3c24
36 changed files with 1118 additions and 0 deletions
28
src/c/payloads/exception.h
Normal file
28
src/c/payloads/exception.h
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
/**
|
||||
* payloads/exception.h
|
||||
*
|
||||
* An exception; required three pointers, so use object of size class 3.
|
||||
*
|
||||
* (c) 2026 Simon Brooke <simon@journeyman.cc>
|
||||
* Licensed under GPL version 2.0, or, at your option, any later version.
|
||||
*/
|
||||
|
||||
#ifndef __psse_payloads_exception_h
|
||||
#define __psse_payloads_exception_h
|
||||
|
||||
#include "memory/pointer.h"
|
||||
|
||||
/**
|
||||
* @brief An exception; required three pointers, so use object of size class 3.
|
||||
*/
|
||||
struct exception_payload {
|
||||
/** @brief the exception message. Expected to be a string, but may be anything printable. */
|
||||
struct pso_pointer message;
|
||||
/** @brief the stack frame at which the exception was thrown. */
|
||||
struct pso_pointer stack;
|
||||
/** @brief the cause; expected to be another exception, or (usually) `nil`. */
|
||||
struct cons_pointer cause;
|
||||
};
|
||||
|
||||
|
||||
#endif
|
||||
Loading…
Add table
Add a link
Reference in a new issue