Links

Generic methods

The following methods are common to all CSML primitive types.

.type_of()

Return the type of the target value (string, array, object, float, boolean, int, null)
any_value.type_of() => String

.to_string()

Return the target value formatted as a string.
any_value.to_string() => String

.is_number()

Check if a variable can be interpreted as a number (float or int)
string.is_number() => boolean
// example
do var_int = "42"
say var_int.is_number() // true
do var_float = "42.42"
say var_int.is_number() // true
do obj = {"toto": "tutu"}
say obj.is_number() // false

.is_int()

Check if the variable can be interpreted as an int
string.is_int() => boolean
// example
do var_int = "42"
say var_int.is_number() // true
do var_float = 42.42
say var_int.is_number() // false

.is_float()

Check if the variable can be interpreted as an float
string.is_float() => boolean
// example
do var_int = 42
say var_int.is_number() // false
do var_float = 42.42
say var_int.is_number() // true

.is_error(), .get_info()

Some functions may resolve to an error due to a faulty user input, an unreachable API, or some other bug in the code. You can check the result of such functions call (like HTTP() or App()) with .is_error(), and get more information with .get_info().
do x = HTTP("https://somewhere.com/does-not-exist").send()
if (x.is_error()) {
// get info a description of the error
debug "{{x.get_info()}}"
// try something else or ask again the user for input!
}