code: private ReplaceRegion getReplaceRegion(String nameToUse, String packageLocalName, JvmDeclaredType type, TypeUsage usage,
  			RewritableImportSection importSection) {
  		// if the resource contains two types with the same simple name, we don't add any import
  		// but we can still use the package local name within the same package.
  		// Except for inner types
  		if (equal(usage.getContextPackageName(), type.getPackageName()) && type.getDeclaringType() == null) {
  			if (type.eContainer() != null) {
  				String declarationLocalName = getLocalName(type, usage.getContext());
  				nameToUse = declarationLocalName;
  			} else if (importSection.getImportedTypes(packageLocalName) == null) {
  				nameToUse = packageLocalName;
  			}
  		}
  		String textToUse = getConcreteSyntax(nameToUse, type, usage);
  		return new ReplaceRegion(usage.getTextRegion(), textToUse);
  	}
docs: /* @Nullable