MCPcopy Create free account
hub / github.com/CJex/regulex / toPattern

Function toPattern

src/Kit.ts:656–670  ·  view source on GitHub ↗
(range: CharRangeRepr)

Source from the content-addressed store, hash-verified

654 @see `Charset.fromPattern`
655 */
656 export function toPattern(range: CharRangeRepr): string {
657 let r1 = begin(range);
658 let r2 = end(range);
659 if (r1 === r2) return toChar(r1);
660 if (r1 + 1 === r2) return toChar(r1) + toChar(r2);
661 return toChar(r1) + '-' + toChar(r2);
662
663 function toChar(cp: number): string {
664 if (cp === _escapeCodePoint || cp === _excludeSignCodePoint || cp === _hyphenCodePoint) {
665 return '\\' + chr(cp);
666 } else {
667 return chr(cp);
668 }
669 }
670 }
671
672 export function toCodePoints(range: CharRangeRepr, maxCount = Infinity): number[] {
673 let r1 = begin(range);

Callers

nothing calls this directly

Calls 3

beginFunction · 0.85
endFunction · 0.85
toCharFunction · 0.85

Tested by

no test coverage detected