matches.add(new Variable(typePackage, typeName, "null", Variable.LOCAL, 2, new char[0], null));
matches.add(new Variable(typePackage, typeName, "null", Variable.FIELD, 2, new char[0], null));
	private List findFieldsMatchingType(List variables, String typePackage, String typeName) throws JavaModelException {				if (typeName == null || typeName.length() == 0)			return null;				// traverse the lists in reverse order, since it is empirically true that the code		// completion engine returns variables in the order they are found -- and we want to find		// matches closest to the codecompletion point.. No idea if this behavior is guaranteed.				List matches= new ArrayList();				for (ListIterator iterator= variables.listIterator(variables.size()); iterator.hasPrevious(); ) {			Variable variable= (Variable) iterator.previous();			if (isTypeMatch(variable, typePackage, typeName))				matches.add(variable);		}		// add null proposal		if (!isPrimitive(typeName.toCharArray()))			matches.add(new Variable(typePackage, typeName, "null", Variable.LOCAL, 2, new char[0], null)); //$NON-NLS-1$								return matches.isEmpty() ? null : matches;	}