# Except ## Description Exception implementation written in C. ## Table of Contents - [Description](#description) - [Features](#features) - [Installation](#installation) - [Usage](#usage) - [Credits / Resources](#credits--resources) - [License](#license) ## Features / TODOS - [ ] RAISE - Raise an exception. - [ ] RERAISE - Reraise the current exception. - [ ] RETURN - Switch to the previous exception frame and return. - [ ] TRY - Start a try block. - [ ] EXCEPT - Catch a specific exception. - [ ] ELSE - Catch all other exceptions. - [ ] FINALLY - Execute final code. - [ ] END_TRY - End a try block. - [ ] hard_fail(char * fmt, ...) - Print errno along with msg to stderr and exit. ## Usage except.c and except.h should be dropped into an existing project and compiled along with it.
`make test` to build and test project. Tests usually contain usage examples.
`make` to build the project. ## Credits / Resources I found these resources extremely helpful.
[C Interfaces and Implementations - David Hanson](https://github.com/drh/cii/tree/master)
[Jacob Sorber](https://www.youtube.com/@JacobSorber)
## License This project is licensed under GPLv3 - see the [LICENSE](LICENSE) file for details.