Estoy intentando escribir una gramática simple para PEG.js que se correspondería con algo como esto:problema con el extremo de entrada de PEG.js
some text;
arbitrary other text that can also have µnicode; different expression;
let's escape the \; semicolon, and \not recognized escapes are not a problem;
possibly last expression not ending with semicolon
Así que, básicamente, estos son algunos de los textos separados por punto y coma. Mi gramática simplificada se ve así:
start
= flow:Flow
Flow
= instructions:Instruction*
Instruction
= Empty/Text
TextCharacter
= "\\;"/
.
Text
= text:TextCharacter+ ';' {return text.join('')}
Empty
= Semicolon
Semicolon "semicolon"
= ';'
El problema es que si pongo que no sea un punto y coma nada en la entrada, me sale:
SyntaxError: Expected ";", "\\;" or any character but end of input found.
cómo solucionar esto? He leído que PEG.js no puede hacer coincidir el final de la entrada.
FWIW, puede hacer coincidir el final de la entrada con '! .' – ebohlman