xtext相关内容

XText语法变量定义/引用

[any type]Realisation语法规则初始化应该是一个值或对预定义变量的引用。 对于Integer,它看起来与您从Java中知道的类似: public int i = 3; 为什么以下语法引发异常? Integer returns ecore::ELong: (Plus|Minus)? INT; IntegerRealisation: {Integer} In ..
发布时间:2022-08-15 22:24:57 Java开发

Xtext:具有重要/语义空白的语言语法

如何使用 Xtext 解析带有语义空白的语言?我正在尝试为 CoffeeScript 编写语法,但找不到任何好的文档. 解决方案 AFAIK,你不能. 在解析类 Python 语言的情况下,您需要词法分析器发出 INDENT 和 DEDENT 标记.为此,您需要在词法分析器规则(Xtext 的 terminal 规则)中支持语义谓词,该规则将首先检查输入中下一个字符的当前位置是否等于 ..
发布时间:2022-01-24 10:23:07 Java开发

在 Eclipse RCP 应用程序 (Eclipse e4) 中隐藏 Coolbar/Toolbar 项/Preference 页面

在我们的 Eclipse RCP 应用程序(使用 Eclipse 3.7)中,我重写了 WorkbenchWindowAdvisor.postWindowCreate() 方法,以隐藏不需要的 Coolbar/Toolbar 项目,例如 File、运行等菜单和运行最后一个工具、搜索等工具栏按钮,它工作正常.现在我已将代码移至 Eclipse e4 4.1.2,当我运行我的 RCP 应用程序时,它会 ..
发布时间:2022-01-16 13:25:49 Java开发

有没有人在 IViewPart 中完全实现了 XText 编辑器

基本上我需要在 IViewPart 中实现一个完整的 XText 编辑器.我的大部分工作基于 XText 表单集成项目.不幸的是,这不是 XText 编辑器上的完整实现,我想知道是否有人知道更好的起点.. 甚至完整的实现:-) 解决方案 从 2.2 开始就有可能(见 此线程).这段代码对我有用: IEditedResourceProvider resourceProvider = new ..
发布时间:2022-01-16 13:15:21 其他开发

未解析的 AST <O(exp(n))?

抽象问题描述: 在我看来,解析意味着从 AST 创建一个令牌流,当再次解析时会产生一个相等的 AST. 所以 parse(unparse(AST)) = AST 成立. 这等同于找到一个有效的解析树,它会产生相同的 AST. 该语言由 无上下文 S-attributed 语法使用 eBNF 变体. 因此,解析器必须通过所有语法约束都存在的遍历节点找到有效的“路径".这 ..

Aptana Studio 3 (.less) 的高级自定义语法着色

我想为 Aptana Studio 3 添加 .less 的语法突出显示.我找到了 XText,但它似乎只适用于 Eclipse.Apatana 似乎没有在他们的论坛上提供太多关于如何执行此操作的线索,那么是否有人有任何创建自定义语法突出显示的经验或知道包含 .less 语法检测和突出显示的解决方案? 解决方案 如果您只想突出显示语法,您可以让 Aptana 将 .less 文件视为 .c ..
发布时间:2021-11-17 01:09:58 前端开发

由于递归规则调用,规则具有非 LL(*) 决定

我有一个错误(如标题中所述),其中包含一条我不知道如何解决的规则. 我写了以下规则: FunctionArguments 返回 FunctionArgs::IFunctionArguments :函数参数正常|函数参数ForIter;FunctionArgumentsNormal 返回 FunctionArgs::IFunctionArguments :{FunctionArgs::Fun ..
发布时间:2021-11-11 03:51:17 其他开发

用于开发插件的 ANTLR 和 Xtext 集成

我当前的项目专注于从高级规范生成代码.更具体地说,开发人员编写高级规范,编译器解析它们并生成 Java 代码.对于解析器,我使用了 ANTLR 语法,而对于代码生成,我使用了 StringTemplateFiles. 为了提供良好的编辑器支持(语法高亮和着色),我使用了 xText. 现在,真正的问题来了 - 如何将 xText 编辑器支持与 ANTLR 解析器和代码生成器集成?我想为 ..
发布时间:2021-11-11 03:49:54 Java开发

将 xtext 编辑器支持与外部 ANTLR 解析器链接起来

我当前的项目(将其命名为 IoTSuite)采用高级规范,解析它们,并生成 Java 和 Android 代码.在这个项目中,我编写了 ANTLR 语法来解析高级规范,并使用 StringTemplate 作为代码生成器. 然而,由于良好的编辑器支持和语法着色功能,我使用了 xtext 语法(与 ANTLR 语法相同,但它是用 xText 编写的).现在,我执行以下三个步骤: 步骤 1 ..
发布时间:2021-11-11 03:49:30 Java开发

Xtext 和 ANTLR 有什么关系?

我听说 Xtext 最终使用的是 ANTLR,但是它们的语法规范文件的格式有些不同.那么两者之间是什么关系呢? 解决方案 Xtext 依赖 Antlr 解析器生成器来解析输入文件.除此之外,该框架还提供了许多附加值,例如强类型 AST、链接和静态分析的抽象以及 Eclipse 的 IDE 集成. 为此,Xtext 生成了两个 Antlr 语法.一个用于生成实际 AST 的生产解析,第 ..
发布时间:2021-11-11 03:46:58 其他开发

将 ANTLR 语法翻译成 XText 语法:如何去除句法谓词

我是 Xtext 和 ANTLR 的新手. 我需要将 ANTLR (.g) 语法翻译成 XTEXT (.xtext) 语法.在 ANTLR 文法中有一些 Xtext 不支持的句法谓词. 有没有办法删除/翻译这些谓词? 谢谢 编辑 我要翻译的 ANTLR 语法可以在这里找到: /** 版权所有 2009,Google Inc.* 版权所有.**以源代码和二进制形式重新 ..
发布时间:2021-11-11 03:44:25 其他开发

xtext 中的终端/数据类型/解析器规则

我使用的是 xtext 2.4.我想要做的是类似 SQL 的语法.让我感到困惑的是我不确定哪些东西应该被视为终端/数据类型/解析器规则.到目前为止,我与 MyTerm 相关的语法是: 型号:(terms += MyTerm ';')*;我的术语:常数=我的常数 |变量?='?'|collection_literal=CollectionLiteral;我的常量:字符串=字符串|号码=我的号码|日 ..
发布时间:2021-11-11 03:42:27 其他开发

编写没有语法文件的自定义 Xtext/ANTLR 词法分析器

我正在为 CoffeeScript 编写一个 Eclipse/Xtext 插件,我意识到我可能需要手动为它编写一个词法分析器.CoffeeScript 解析器还使用 手写词法分析器处理语法中的缩进和其他技巧. Xtext 生成一个扩展 org.eclipse.xtext.parser.antlr.Lexer 的类,而后者又扩展了 org.antlr.runtime.Lexer.所以我想我会延 ..
发布时间:2021-11-11 03:41:44 其他开发

将简单的 Antlr 语法转换为 Xtext

我想将一个非常简单的 Antlr 语法转换为 Xtext,所以没有 句法谓词,没有Xtext 不提供的Antlr 的花哨功能.考虑这个语法 语法简单;//Antlr3foo: 数字+;号码:号码;数字:'0'..'9'+; 及其对应的 Xtext 语法简单;//文本导入“http://www.eclipse.org/emf/2002/Ecore"作为ecore生成简单的“http://www ..
发布时间:2021-11-11 03:41:41 其他开发

未解析的 AST <O(exp(n))?

抽象问题描述: 在我看来,解析意味着从 AST 创建一个令牌流,当再次解析时会产生一个相等的 AST. 所以 parse(unparse(AST)) = AST 成立. 这等同于找到一个能产生相同 AST 的有效解析树. 该语言由 无上下文 S-attributed 语法,使用 eBNF 变体. 因此,解析器必须通过所有语法约束都存在的遍历节点找到有效的“路径".这基 ..

XText 不提供的 ANTLR 有哪些功能?

我刚刚遇到了非常好的工具 Xtext 来创建 DSL 以及用于编辑的 IDE.我在网上进行了一些搜索,发现有人说它没有提供 ANTLR 的所有功能.我使用 ANTLR 作为我的解析器生成器. 我什至不确定 ANTLR 的哪些功能我需要为我的语言编写完整的解析器,但 ANTLR 已经存在了很长时间,并且可能支持比 Xtext 更多的功能. 谁能举例说明不能在 Xtext 语法中指定的内容 ..
发布时间:2021-11-11 03:37:33 Java开发

使用 ant 构建 xtext 项目时出错:生成语法类失败

我正在为我的学士论文的 eclipse 应用程序开发 xtext 插件项目. 我想在运行时使用执行 Mwe2Launcher 类的 ant 脚本执行“生成 Xtext Artifacts",并在临时文件夹中进行生成. 我写了一个 Activator 在 temp 文件夹中创建一个项目文件夹并复制 mwe2 文件、我的语法文件和 ant 脚本. 执行 Ant 脚本导致此错误: o ..
发布时间:2021-11-11 02:58:22 其他开发

Java 词法分析器和解析器

我正在使用 Xtext 为 Java 编写一个新的编辑器.我想让解析器解析主类并用实际代码替换方法调用. 例如 类测试{公共静态无效主(字符串 [] args ){System.out.println("维拉格");方法();}公共静态方法(){System.out.println("Purnam");}} 解析后我想返回如下所述的文档. 类测试{公共静态无效主(字符串 [] args ..
发布时间:2021-10-04 18:50:32 Java开发

如何从 XExpression 获取 JvmModelInferrer 方法体并附加样板代码

在 JvmModelInferrer 中,在构造方法或构造函数的主体时,如何从语法中插入两者 XExpression body = op.body 和额外的“样板"代码,例如 body = [附加('''System.out.println("锅炉板");''')] 我可以做到,但不能同时做到. 对于最小的工作示例,请考虑以下规范的 Xbase 语法, 语法 org.example ..
发布时间:2021-10-04 18:50:29 其他开发

Xtext - 验证重复名称

我有以下语法,但我想对此进行一些验证.如果“玩家"列表中有重复的名字,我想出错. 语法: 足球:'俱乐部'名称=STRING playerList=PlayerList足球对象+=足球对象;足球对象:播放器 |教练;球员名单:球员+=[球员](球员+=[球员])*;球员:'玩家'名字=ID; 我尝试了以下方法: @Checkdef checkGreetingStartsWithCapi ..
发布时间:2021-10-04 18:50:26 其他开发