UNPKG

fauton

Version:

A library to test any finite automaton with arbitrary alphabets

23 lines (22 loc) 976 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.expandCharacterRanges = void 0; function expandCharacterRanges(characterRangesString) { const characterRanges = characterRangesString.split(','); const symbols = new Set(); characterRanges.forEach((characterRange) => { const characterRangeRanges = characterRange.split('-'); if (characterRangeRanges.length === 2) { const startCharacter = characterRangeRanges[0].charCodeAt(0); const endCharacter = characterRangeRanges[1].charCodeAt(0); for (let characterCodePoint = startCharacter; characterCodePoint <= endCharacter; characterCodePoint += 1) { symbols.add(String.fromCodePoint(characterCodePoint)); } } else { symbols.add(characterRange); } }); return Array.from(symbols); } exports.expandCharacterRanges = expandCharacterRanges;