Spaces:
Runtime error
Runtime error
/** | |
* @fileoverview Common utils for AST. | |
* | |
* This file contains only shared items for core and rules. | |
* If you make a utility for rules, please see `../rules/utils/ast-utils.js`. | |
* | |
* @author Toru Nagashima <https://github.com/mysticatea> | |
*/ | |
; | |
const breakableTypePattern = /^(?:(?:Do)?While|For(?:In|Of)?|Switch)Statement$/u; | |
const lineBreakPattern = /\r\n|[\r\n\u2028\u2029]/u; | |
const shebangPattern = /^#!([^\r\n]+)/u; | |
/** | |
* Creates a version of the `lineBreakPattern` regex with the global flag. | |
* Global regexes are mutable, so this needs to be a function instead of a constant. | |
* @returns {RegExp} A global regular expression that matches line terminators | |
*/ | |
function createGlobalLinebreakMatcher() { | |
return new RegExp(lineBreakPattern.source, "gu"); | |
} | |
module.exports = { | |
breakableTypePattern, | |
lineBreakPattern, | |
createGlobalLinebreakMatcher, | |
shebangPattern | |
}; | |