用Parsec轻松获得仓位作为补偿(作为输入开始的字符)吗?如果是这样,怎么样?内部Parsec将该位置保持为具有源名称,行和列的数据类型。Parsec仓位作为补偿
我希望能够写一个解析器像
pWithPos p = do left <- getPosition -- gets the current position as an offset
x <- p
right <- getPosition -- gets the current position as an offset
return (x,(left,right))
使用的解析器P,其解析的东西,并返回其结果,以及其左,右位置偏移。
alex
(词法分析器生成器)例如句柄positions保持绝对字符偏移量,行号和列号。我缺少parsec中的绝对字符偏移量。
偏移? parsec已经告诉你从0开始的行偏移以及从0开始的列偏移。从文件的开头偏移字符? –
@DonStewart我想从输入开始的字符偏移量。 – Romildo