SableCC

编译器生成工具
授权协议 LGPL
开发语言 Java
所属分类 开发工具、 语法解析工具
软件类型 开源软件
地区 不详
投 递 者 陆承宣
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

SableCC是一个用来生成编译器和分析器的面向对象的框架。这个框架是基于两个基本的设计决策:首先是利用面向对象技术自动构建精确的典型的抽象语法树。第二,这个框架使用经过扩展的Visitor访问者模式来生成tree-walker类。

 相关资料
  • 至少在GCC中,如果我们提供生成汇编代码的选项,编译器会通过创建一个包含汇编代码的文件来服从。但是,当我们简单地运行命令而没有任何选项时,它不会在内部生成汇编代码吗? 如果是,那么为什么它需要首先生成一个汇编代码,然后将其翻译成机器语言?

  • 我正在尝试创建一个自定义注释,例如,确保字段或方法既是又是,如果字段或方法既不是又不是,则会生成编译时错误,如以下示例所示: 到目前为止,我已经完成了两个自定义注释接口: 和: 正如所暗示的,我不知道如何生成编译时错误。Processor的文档清楚地表明我不应该抛出异常, 如果处理器抛出未捕获的异常,该工具可能会停止其他活动注释处理器。 它接着描述了当提出错误条件时会发生什么,现在是如何提出错误条

  • 问题内容: 我正在尝试创建一个自定义批注,例如,以确保字段或方法为and ,并且如果该字段或​​方法不为and ,则将生成编译时错误,如以下示例所示: 到目前为止,我已经完成了两个自定义注释接口: 和: 如所示,我不知道如何生成编译时错误。Processor 的文档清楚地表明,我不应该抛出异常, 如果处理器抛出未捕获的异常,则该工具可能会停止其他活动的注释处理器。 它继续描述了引发错误条件时会发生

  • 有没有办法让Clang、GCC或VS仅使用标准-C(98/11/14)生成adc(带进位添加)指令?(编辑:我的意思是在x64模式下,如果不清楚,对不起。)

  • 为了在运行windows 7 pro的intel core 2上完成一些cmov指令,我编写了以下代码。它所做的就是从控制台获取一个字符串作为输入,应用一些移位操作来生成一个随机种子,然后将该种子传递给srand,以生成一个小的伪随机数数组。然后评估伪随机数是否满足谓词函数(更任意的位随机),并输出“*”或“\u1”。实验的目的是生成cmov指令,但正如您在下面的反汇编中所看到的,没有。 有没有关

  • 我创建了一个简单的. proto文件并执行了编译器(protoc-2.5.0rc1-win32.zip)。为规定的包生成了一个java文件。但是,生成的文件不会编译。. proto文件很简单,只有一条消息,其中包含一堆简单类型的可选字段(正确编号)。. java文件不编译,例如: 构造函数生成了消息。FieldAccessorTable(Descriptors.Descriptor,字符串[])未