ANTLR4 颤振以访问 BuildVisitor 中的每个小部件 [关闭]

Posted

技术标签:

【中文标题】ANTLR4 颤振以访问 BuildVisitor 中的每个小部件 [关闭]【英文标题】:ANTLR4 flutter to access each widget in BuildVisitor [closed] 【发布时间】:2021-04-17 21:11:54 【问题描述】:

编辑

我正在尝试将 ANTLR 与 Flutter 一起使用,但在尝试确定 Dart2Buildvisitor 中的哪些函数可以访问 UI 小部件时遇到了一些困难。我想分别访问每个小部件(例如:alertdialog 的函数,文本字段的函数),但由于我还是新手,我似乎不知道在哪里可以找到它们。有没有办法可以单独访问每个小部件?

编辑 2:当我解析颤振代码以查看小部件在解析树中的位置时,它位于主要和标识符之下

【问题讨论】:

【参考方案1】:

这几乎是飞镖一路下来。非常全面的架构指南https://flutter.dev/docs/resources/architectural-overview。小部件大多位于https://github.com/flutter/flutter/tree/master/packages/flutter/lib/src/material 和https://github.com/flutter/flutter/tree/master/packages/flutter/lib/src/widgets

【讨论】:

【参考方案2】:

Flutter 小部件通常在 dart 中表示为对象字面量。查找任何 Flutter 小部件的构建函数的返回结果。 此外,flutter 小部件比传统定义的小部件更小、更细化。

因此,在许多语言中,您可能有一个具有 20 个属性的小部件,但在颤振中,它可能由小型简单小部件(例如中心、边框、文本等)的嵌套树实现。

【讨论】:

以上是关于ANTLR4 颤振以访问 BuildVisitor 中的每个小部件 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

ANTLR4入门:图示说明eclipse Antlr4IDE插件的安装及语法测试过程

颤振弹出窗口不会要求访问相机的权限

ANTLR4权威指南 - 第5章 设计语法

ANTLR4 如何编写语法文件之语法解析器规则

ANTLR4 如何编写语法文件之语法解析器规则

将文件上传到 S3 时如何传递 ACL 属性以进行颤振放大?