mirror of
https://github.com/nim-lang/Nim.git
synced 2026-04-19 22:10:33 +00:00
Make the existence of high(type) clearer, especially near subranges (#18286)
* Make the existence of high(type) clearer, especially around subranges * Use a better example and dry up the wording
This commit is contained in:
@@ -989,10 +989,12 @@ Ordinal types have the following characteristics:
|
||||
- Ordinal types are countable and ordered. This property allows the operation
|
||||
of functions such as `inc`, `ord`, and `dec` on ordinal types to
|
||||
be defined.
|
||||
- Ordinal values have the smallest possible value. Trying to count further
|
||||
down than the smallest value produces a panic or a static error.
|
||||
- Ordinal values have the largest possible value. Trying to count further
|
||||
than the largest value produces a panic or a static error.
|
||||
- Ordinal types have a smallest possible value, accessible with `low(type)`.
|
||||
Trying to count further down than the smallest value produces a panic or
|
||||
a static error.
|
||||
- Ordinal types have a largest possible value, accessible with `high(type)`.
|
||||
Trying to count further up than the largest value produces a panic or
|
||||
a static error.
|
||||
|
||||
Integers, bool, characters, and enumeration types (and subranges of these
|
||||
types) belong to ordinal types.
|
||||
@@ -1095,6 +1097,7 @@ lowest and highest value of the type. For example:
|
||||
type
|
||||
Subrange = range[0..5]
|
||||
PositiveFloat = range[0.0..Inf]
|
||||
Positive* = range[1..high(int)] # as defined in `system`
|
||||
|
||||
|
||||
`Subrange` is a subrange of an integer which can only hold the values 0
|
||||
|
||||
Reference in New Issue
Block a user