Category talk:Wren-check: Difference between revisions
Content deleted Content added
→Source code: Doh, bug fixes already! |
→Source code: Still not right :( |
||
Line 15: | Line 15: | ||
if (name == "" || name == null) name = "Value" |
if (name == "" || name == null) name = "Value" |
||
Fiber.abort("'%(name)' must be %(desc), have '%(value)'.") |
Fiber.abort("'%(name)' must be %(desc), have '%(value)'.") |
||
} |
|||
static isSafeInt_(value) { |
|||
return (value is Num) && value.isInteger && value <= Num.maxSafeInteger.abs |
|||
} |
} |
||
Line 102: | Line 106: | ||
} |
} |
||
static posInt(name, value) |
static posInt(name, value) { int(name, value, 1) } |
||
static nonNegInt(name, value) |
static nonNegInt(name, value) { int(name, value, 0) } |
||
⚫ | |||
static |
static safeInt(name, value) { |
||
if (!isSafeInt_(value)) abort_(name, value, "a 'safe' integer") |
|||
} |
|||
static posSafeInt(name, value) { |
|||
if (!(isSafeInt_(value) && value > 0)) { |
|||
⚫ | |||
} |
|||
} |
|||
static nonNegSafeInt(name, value) { |
|||
if (!(isSafeInt_(value) && value >= 0)) { |
|||
abort_(name, value, "a non-negative 'safe' integer") |
|||
} |
|||
} |
|||
static nonZeroSafeInt(name, value) { |
static nonZeroSafeInt(name, value) { |
||
if (!( |
if (!(isSafeInt_(value) && value != 0)) { |
||
abort_(name, value, "a non-zero 'safe' integer") |
|||
} |
|||
} |
} |
||