UNPKG

stream-token-parser

Version:

Token parser designed based on stream property. Accept chunk string and parse it into tokens simultaneously. [readme-lang:zh]基于流特性设计的token解析器,接受一个chunk的字符串,同时解析成tokens。

40 lines (37 loc) 833 B
'use strict'; /** * * @readme-quick-run * * ## test tar=js r_c=streamTokenSpliter * * let { * parser, WAIT, QUIT, MATCH * } = streamTokenSpliter; * let spliter = parser([{ * priority: 1, * match: (prefix) => { * if (/^\w*$/.test(prefix)) return MATCH; * return QUIT; * }, * name: 'word' * }, { * priority: 0, * match: (prefix) => { * if (/^.$/.test(prefix)) return MATCH; * return QUIT; * }, * name: 'trash' * }]); * * let tokens1 = spliter('today=is __'); // chunk1 * let tokens2 = spliter('a good day'); // chunk2 * let tokens3 = spliter(null); // null means end of stream * * console.log(tokens1); * console.log('\n'); * console.log(tokens2); * console.log('\n'); * console.log(tokens3); */ module.exports = require('./src');