mirror of
https://github.com/hamidb80/caster/
synced 2026-01-14 21:31:35 +00:00
No description
| src | ||
| tests | ||
| .gitignore | ||
| caster.nimble | ||
| readme.md | ||
Caster
casting sugar for procedure parameters.
Example
It is specially useful in event handling scenarios:
type
Event = ref object of RootObj
MouseEvent = ref object of Event
mousex, mousey: int
elem.addEventListener proc(me: MouseEvent) = discard # error: Expected `Event` but got `MouseEvent`
elem.addEventListener proc(me: Event as MouseEvent) {.caster.} = # works!
echo me.mousex
# ...
More
see docs or ./tests/test.nim.