eclipse模板两个newName

时间:2013-10-19 09:03:11

标签: java eclipse templates eclipse-templates

我正在尝试编写一个Eclipse模板来生成两个具有非冲突名称的变量。

当我在同一方法中使用模板两次时,第二个matcherVar与第一个matcherVar具有相同的名称,给出了我试图避免的命名冲突。

输出错误:

Pattern patternVar = Pattern.compile(patternString);
Matcher matcherVar = patternVar.matcher(matcherString); // correct matcherVar

Pattern patternVar0 = Pattern.compile(patternString);
Matcher matcherVar = pattern.matcher(matcherString); // wrong, instead: matcherVar0

如您所见,我错误地生成了两次运行模板的冲突名称。

当前模板:(为了便于阅读,添加了换行符和评论)

${:include(java.util.regex.Pattern, java.util.regex.Matcher)}

// compile Pattern object with patternString
${pattern_type:newType(java.util.regex.Pattern)} 
    ${patternVar:newName(pattern_type)} 
        = ${pattern_type.compile(${patternString:var(String)});

// create Matcher object from the Pattern and matchingString
${matcher_type:newType(java.util.regex.Matcher)}
    ${matcherVar:newName(matcher_type)} // <------------------------- **wrong**
        = ${patternVar}.matcher(${matchingString:var(String)});

注意:奇怪的是,在同一方法中运行模板3次或更多次后,生成的名称不会发生冲突,因此这可能是Eclipse的错误。

0 个答案:

没有答案