scanner logic
byob32768generatorを経由してfindInLine/matchを使用可能。scanner
findInLine, match
01. declare buffer, result, valueslet buffer=``,result,values=readablestream.toValues()findInLine
02. start loopfor(;;){03. get result, start if
if(result=buffer.match(RegExp(`(${v})(?:\r\n|\n|$)`))){04. set buffer
buffer=buffer.substring(result.index+result.shift().length)05. return
return result06. end if
}07. return
if(!values)return values08. get result, start if
if((result=await values.next()).done){09. add buffer
buffer+=decoder.decode()10. set values
values=null11. end if, else set buffer
}else buffer+=decoder.decode(result.value,{stream:true})12. end loop
}match
02. declare this.matchthis.match=()=>result