- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试恢复我在 vs 2008 中工作的旧 f# 解析器项目,以便与 2013 一起使用。它使用 FsLexYacc。
我通过使用预构建步骤使其构建正常:
fslex --unicode "$(ProjectDir)XpathLexer.fsl"
fsyacc --module XpathParser "$(ProjectDir)XpathParser.fsy"
<FsYacc Include="XpathParser.fsy">
<FsLex Include="XpathLexer.fsl">
<CustomBuild Include="XpathParser.fsy">
<Message>Calling FsYacc</Message>
<Command>fsyacc --module XpathParser "$(ProjectDir)XpathParser.fsy"</Command>
<Outputs>$(ProjectDir)XpathParser.fs</Outputs>
</CustomBuild>
<PropertyGroup>
<CustomBuildBeforeTargets>CoreCompile</CustomBuildBeforeTargets>
</PropertyGroup>
最佳答案
我不认为这些工具默认包含在随 Visual Studio 一起安装的 F# 编译器中,因此这些任务不存在。我对 Visual Studio 2012 项目执行了以下操作,但我希望它在 VS 2013 中会类似。以下是我必须遵循的步骤:
CallFsLex
和 CallFsYacc
建立目标。我在为 Microsoft.FSharp.targets
导入后添加了这个:<Import Project="$(ProjectDir)\..\packages\FSPowerPack.Community.3.0.0.0\Tools\FSharp.PowerPack.targets" />
<FsYaccToolPath>..\packages\FSPowerPack.Community.3.0.0.0\Tools</FsYaccToolPath>
<FsLexToolPath>..\packages\FSPowerPack.Community.3.0.0.0\Tools</FsLexToolPath>
<FsLexUnicode>true</FsLexUnicode>
这告诉构建任务在哪里可以找到必要的工具并为 fslex 设置 unicode 选项。 <Compile Include="Sql.fs" />
<FsYacc Include="SqlParser.fsp">
<Module>SqlParser</Module>
</FsYacc>
<Compile Include="SqlParser.fsi" />
<Compile Include="SqlParser.fs" />
<FsLex Include="SqlLexer.fsl" />
<Compile Include="SqlLexer.fs" />
关于msbuild - 在 Vs2013 中使用 FsLex/Yacc,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19781156/
使用 fslex 我想为一个模式返回多个 token ,但我看不出如何实现这一点。即使使用另一个返回多个 token 的规则函数也适用于我。 我正在尝试使用这样的东西: let identifier
我已经使用 C/lex 很长时间了,现在想使用 F#/fslex。 我在 C# 和学习 F# 的过程中相对较好。 唯一的问题是我看不到任何项目示例或模板,其中 fslex 正确包含在 Visual S
在阅读了一个 2 年历史的网页后,与他们的 OCamel 同行相比,它确实撕裂了 fslex/fsyacc、错误、缓慢、愚蠢等,我想知道什么是词法解析需求的最佳选择? 我以前用 C# 绑定(bind)
我正在尝试使用 fslex 编写一个小型 DSL 解析器和 fsyacc .输入由需要不同词法规则的两种不同语言的交错块组成。我怎么写我的fslex文件来支持? (我想类似的情况是如何为 c 语言定义
fslex 和 fsyacc 工具目前需要 2 阶段编译,生成文件,然后由 fsc 编译。在我看来,如果源文件是嵌入式资源,以编程方式提供给 fslex 和 fsyacc,并且生成的代码使用 Code
我一直在业余时间研究 Lua fslex 词法分析器,使用 ocamllex 手册作为引用。 我在尝试正确标记长字符串时遇到了一些障碍。 “长字符串”由 '[' ('=')* '[' 分隔和 ']'
这个问题不太可能帮助任何 future 的访客;它仅与一个小地理区域、一个特定时刻或一个非常狭窄的情况相关,而这些情况通常不适用于互联网的全局受众。如需帮助使这个问题更广泛地适用,visit the
我已经在编译器上工作了一段时间,但在更改为 PowerPack 1.9.9.9 和 VS2010 的发布版本后,我无法编译以下行: 让 lexbuf = Lexing.from_string 文本 我
我正在使用 fslex 并且在我的标记器规则之一中,我需要查找下一个字符,以便我可以决定是继续使用 token 还是停止、放松并让前一个规则使用它。 我花了一些时间检查它的源代码,看起来唯一的方法是编
我需要解析如下简单的 DSL 语言: import "library.txt" def main(int param1, bool param2) { var a = f4(param1);
我正在尝试恢复我在 vs 2008 中工作的旧 f# 解析器项目,以便与 2013 一起使用。它使用 FsLexYacc。 我通过使用预构建步骤使其构建正常: fslex --unicode "$(P
我的词法分析器应该区分括号并在词法分析期间维护一堆打开的括号。为此,我在 fsl 文件中指定了一个辅助函数,如下所示: let updateBracketStack sign = // whenev
我正在学习 F#,因为我想编写一个词法分析器和解析器。我对这种处理有一点经验,但确实需要像 F# 一样正确地学习它。 在学习 F# 的词法/解析功能时,学习 lex 和 yacc 就足够了吗? 或者是
我遇到了 FSlex/FSyacc 在我的机器上崩溃的问题。 在上下文中,这是在 Parallels 虚拟机内运行的 Windows 8 Consumer Preview(32 位)上运行的 Visu
我是一名优秀的程序员,十分优秀!