You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
76 lines
1.3 KiB
76 lines
1.3 KiB
5 months ago
|
'use strict';
|
||
|
|
||
|
Object.defineProperty(exports, '__esModule', {
|
||
|
value: true,
|
||
|
});
|
||
|
exports.isDigit = isDigit;
|
||
|
exports.isLetter = isLetter;
|
||
|
exports.isNameContinue = isNameContinue;
|
||
|
exports.isNameStart = isNameStart;
|
||
|
exports.isWhiteSpace = isWhiteSpace;
|
||
|
|
||
|
/**
|
||
|
* ```
|
||
|
* WhiteSpace ::
|
||
|
* - "Horizontal Tab (U+0009)"
|
||
|
* - "Space (U+0020)"
|
||
|
* ```
|
||
|
* @internal
|
||
|
*/
|
||
|
function isWhiteSpace(code) {
|
||
|
return code === 0x0009 || code === 0x0020;
|
||
|
}
|
||
|
/**
|
||
|
* ```
|
||
|
* Digit :: one of
|
||
|
* - `0` `1` `2` `3` `4` `5` `6` `7` `8` `9`
|
||
|
* ```
|
||
|
* @internal
|
||
|
*/
|
||
|
|
||
|
function isDigit(code) {
|
||
|
return code >= 0x0030 && code <= 0x0039;
|
||
|
}
|
||
|
/**
|
||
|
* ```
|
||
|
* Letter :: one of
|
||
|
* - `A` `B` `C` `D` `E` `F` `G` `H` `I` `J` `K` `L` `M`
|
||
|
* - `N` `O` `P` `Q` `R` `S` `T` `U` `V` `W` `X` `Y` `Z`
|
||
|
* - `a` `b` `c` `d` `e` `f` `g` `h` `i` `j` `k` `l` `m`
|
||
|
* - `n` `o` `p` `q` `r` `s` `t` `u` `v` `w` `x` `y` `z`
|
||
|
* ```
|
||
|
* @internal
|
||
|
*/
|
||
|
|
||
|
function isLetter(code) {
|
||
|
return (
|
||
|
(code >= 0x0061 && code <= 0x007a) || // A-Z
|
||
|
(code >= 0x0041 && code <= 0x005a) // a-z
|
||
|
);
|
||
|
}
|
||
|
/**
|
||
|
* ```
|
||
|
* NameStart ::
|
||
|
* - Letter
|
||
|
* - `_`
|
||
|
* ```
|
||
|
* @internal
|
||
|
*/
|
||
|
|
||
|
function isNameStart(code) {
|
||
|
return isLetter(code) || code === 0x005f;
|
||
|
}
|
||
|
/**
|
||
|
* ```
|
||
|
* NameContinue ::
|
||
|
* - Letter
|
||
|
* - Digit
|
||
|
* - `_`
|
||
|
* ```
|
||
|
* @internal
|
||
|
*/
|
||
|
|
||
|
function isNameContinue(code) {
|
||
|
return isLetter(code) || isDigit(code) || code === 0x005f;
|
||
|
}
|