private void internalLinkVariable(EObject o, EAttribute attr, String varName, PPImportedNamesAdapter importedNames,
IMessageAcceptor acceptor) {
boolean qualified = false;
boolean global = false;
boolean disqualified = false;
QualifiedName qName = null;
SearchResult searchResult = null;
boolean existsAdjusted = false; // variable found as stated
boolean existsOutside = false; // if not found, reflects if found outside search path
try {
qName = converter.toQualifiedName(varName);
if(patternHelper.isDECIMALVAR(varName)) {
internalLinkRegexpVariable(o, varName, attr, acceptor);
return;
}
qualified = qName.getSegmentCount() > 1;
global = qName.getFirstSegment().length() == 0;
searchResult = ppFinder.findVariable(o, qName, importedNames);
// remove all references to not yet initialized variables
disqualified = (0 != removeDisqualifiedVariables(searchResult.getRaw(), o));
if(disqualified) // adjusted can not have disqualified entries if raw did not have them