mirror of
https://github.com/nim-lang/Nim.git
synced 2025-12-29 01:14:41 +00:00
* Error -> Defect for defects The distinction between Error and Defect is subjective, context-dependent and somewhat arbitrary, so when looking at an exception, it's hard to guess what it is - this happens often when looking at a `raises` list _without_ opening the corresponding definition and digging through layers of inheritance. With the help of a little consistency in naming, it's at least possible to start disentangling the two error types and the standard lib can set a good example here.
15 lines
265 B
Nim
15 lines
265 B
Nim
discard """
|
|
output: '''true'''
|
|
"""
|
|
import rationals
|
|
var
|
|
z = Rational[int](num: 0, den: 1)
|
|
o = initRational(num=1, den=1)
|
|
a = initRational(1, 2)
|
|
|
|
try:
|
|
var
|
|
r = initRational(1, 0) # this fails - no zero denominator
|
|
except AssertionDefect:
|
|
echo "true"
|