Method code for $parse_lib.range()

[Turn on line numbering]
arg str;
var out;

out = split(str, " *- *");
if (out.length() == 1) {
    if ("," in str)
        return ['specific, str];
    out = [(> ._range(str) <), 'single];
} else if (out.length() == 2) {
    out = out.replace(1, (> ._range(out[1]) <));
    out = out.replace(2, (> ._range(out[2]) <));
} else {
    throw(~range, "Invalid range reference.");
}
return out;

// Created 27-Mar-1995 as a part of ColdCore, see: @help Credit

Tlon