替换变量名称来处理阴影变量

时间:2015-02-28 07:22:49

标签: python pyparsing

我正在解析一个GLSL源代码,我需要用一个新名称替换全局变量名。问题是如何照顾阴影变量?例如,在以下源代码中,由于本地声明,我想替换行a = 1a = 3但不替换a = 2

int a; // To be replaced

void some_function(void)
{
    a = 1; // To be replaced
    {
         int a;
         a = 2; // To be kept
    }
    a = 3; // To be replaced
}

我正在使用pyparsing但我没有找到解决方案(除了使用nestedExpr并重新解析每个块)。

0 个答案:

没有答案