首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Parsec不识别块注释

Parsec不识别块注释
EN

Stack Overflow用户
提问于 2013-01-08 22:32:45
回答 1查看 417关注 0票数 2

在解析胡子模板时,我遇到了Parsec识别注释的问题。

各种八字胡标签都以{{开头,包括块注释({{!comment}})。我已经在我的TokenParser中将commentStart和commentEnd设置为{{!}}

每当我向模板添加注释时,Parsec都会抱怨该注释是意外的。

相反,它需要一个mustache变量,因为这是唯一与{{匹配的标记。

Parsec何时删除注释?我以为它会在源代码命中我的解析器之前发生?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-01-08 23:02:20

Parsec不会删除注释。在TokenParser中,注释包含在空格中,因此

代码语言:javascript
复制
whiteSpace tokenParser

跳过注释和普通空白(空格、制表符、换行符等)。

通常,使用lexeme parser跳过词位后面的所有空格,然后只需要一个初始空格跳过顶级解析器跳过源中任何前导空格,之后,所有空格(包括注释)都会自动处理(由makeTokenParser创建的TokenParser处理)。

如果不使用lexeme并手动处理空白,则必须注意作为注释分隔符前缀的标记/词位。如果您首先尝试使用前缀,将会成功,但只使用了注释分隔符的一部分,在本例中将'!'留给变量解析器,然后解析器将失败。

票数 7
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/14217231

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档