问题标签 [code-transformation]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
haskell - Haskell do 块中如何允许表达式
在下面的代码中,第 4 行,我有一个表达式夹在 do 块中的两个 IO 操作之间:
我将 do 表示法理解为使用 >>= 或 >> 将单子操作链接在一起。但是当你在两者之间有一个表达式时,它是如何工作的?您不能只使用 >> 将 3-5 行粘合在一起。
java - 如何使用 JavaParser 在同一行添加新语句
我知道JavaParser在 AST 上运行,但我很好奇是否可以在与另一行相同的行上添加新语句。让我举例说明我想要实现的目标。
示例输入X.java
(不要介意“逻辑”):
我想要实现的是System.out.println("End of loop reached");
在每个循环体的末尾添加语句 - 但是,如果可能的话,我想在循环体中的最后一个语句旁边添加这个新语句。因此,结果应如下所示:
目前我使用以下访问者(用 Kotlin 编写),只是为了了解 JavaParser。然而,这会导致为打印语句添加新行。关于如何指示 JavaParser 在同一行添加新节点的任何想法?
java - 跟踪 JavaParser 中的行号更改
我目前尝试使用JavaParser稍微修改现有的源代码。我现在希望能够跟踪这些修改引入的行号更改。
例如,假设我们有一个ModifierVisitor
在每个 while 循环的主体中添加一行的代码(处理的代码可能包含多个循环)。处理以下代码
会把它变成
问题: JavaParser 中是否有一种简单的方法/内置功能可以在这两个版本之间创建线映射?
我想有一个从新行号到旧行号的映射(反之亦然)。对于上面的示例,地图应如下所示:
haskell - Haskell 中的 Do 表达式扩展
我有一段来自Get Programming with Haskell 一书的代码片段,如下所示:
为了更好地理解ST s
这里上下文中转换的完整过程,我决定将这些代码行扩展为使用>>, >>=
and的表达式return
。所以我的尝试导致了这段代码:
它是正确的扩展吗?用或类似的动作扩展do-notations的一般方法是什么,forM_
因为它们进行了一些计算但在上下文中丢弃了结果?
python - 有什么办法可以将此python代码转换为php
我需要完成的是找到一种方法,我可以将任何 python 代码的基础知识转换为 php 函数和条件等等