🤖 Repository layout updated to latest version
This commit was automatically generated by [a script](https://gitfub.space/Jmaa/repo-manager)
This commit is contained in:
parent
7d7bf5c197
commit
a8315c39d5
35
README.md
35
README.md
|
@ -11,6 +11,41 @@ Lua Library that replaces the default [assert](https://www.lua.org/manual/5.4/ma
|
|||
assert condition, inspects the state of the program and emits an improved
|
||||
error message.
|
||||
|
||||
## Example
|
||||
|
||||
```lua
|
||||
function f (a)
|
||||
|
||||
```
|
||||
assert(type(a) == 'string')
|
||||
```
|
||||
|
||||
end
|
||||
|
||||
f(42)
|
||||
```
|
||||
|
||||
Without [assert-gooder](index.html#), the above code would fail with the error message
|
||||
`assertion failed!`. With [assert-gooder](index.html#), it will fail with this error message:
|
||||
`assertion failed! bad argument #1 'a' to 'f' (string expected, but got number: 42)`,
|
||||
|
||||
## Motivation
|
||||
|
||||
Assertions are useful to ensure internal consistency, when you're writing code
|
||||
in a hurry, but in Lua (and most other languages), these assert constructs never
|
||||
produce useful error messages, but rather unhelpful `assert failed!` errors and
|
||||
a stack trace.
|
||||
|
||||
By making it a runtime library, instead of a "compile-time" rewrite, we gain
|
||||
flexibility. It's much easier to import a library, than restructuring then
|
||||
compile pipeline. It also means that we have access to runtime values, allowing
|
||||
even more helpful messages.
|
||||
|
||||
## Setup
|
||||
|
||||
Download, and use `assert = require "assert-gooder"` to overwrite Lua's default
|
||||
assert with [assert-gooder](index.html#).
|
||||
|
||||
- Author: Jon Michael Aanes (jonjmaa@gmail.com)
|
||||
|
||||
## Dependencies
|
||||
|
|
Loading…
Reference in New Issue
Block a user