public Identifier getIdentifier(Reference ref) {
		if (referenceCache.containsKey(ref))
			return (Identifier) referenceCache.get(ref);

		String clName = ref.getClazz();
		if (clName.charAt(0) == '[')
			/* Can't represent arrays */
			return null;
		ClassIdentifier clazzIdent = getClassIdentifier(clName.substring(1,
				clName.length() - 1).replace('/', '.'));
		Identifier ident = clazzIdent == null ? null : clazzIdent
				.getIdentifier(ref.getName(), ref.getType());
		referenceCache.put(ref, ident);
		return ident;
	}