Files
21_KnjazkinSO 08d4cc1f80
Some checks failed
CI / build (push) Failing after 3m53s
add CI pipeline with lint, test, build
2026-05-10 16:19:05 +03:00

31 lines
897 B
JavaScript

/**
* @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>
*/
"use strict";
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,
};