我目前尝试使用javaparser稍微修改现有的源代码。我现在想能够跟踪这些修改引入的行号变化。
例如,假设我们有一个 ModifierVisitor
这会在每个while循环的主体中添加一行(处理的代码可能包含多个循环)。正在处理以下代码
1 public class X {
2 public static void main(String[] args) {
3 int a = 1;
4 while(a < 100) {
5 a *= 2;
6 }
7 }
8 }
会把它变成
1 public class X {
2 public static void main(String[] args) {
3 int a = 1;
4 while(a < 100) {
5 a *= 2;
6 System.out.println("Hello, I am the new line");
7 }
8 }
9 }
问:javaparser中有没有一种简单的方法/内置特性来创建这两个版本之间的行Map?
我想有一个Map从新的行号到旧的(或反之亦然)。对于上面的示例,Map应该如下所示:
New -> Old
1 -> 1
2 -> 2
3 -> 3
4 -> 4
5 -> 5
6 -> -1 (did not exist in the old version)
7 -> 6
8 -> 7
9 -> 8
暂无答案!
目前还没有任何答案,快来回答吧!