/*
 * Created on Nov 19, 2003
 *
 * To change the template for this generated file go to
 * Window&gt;Preferences&gt;Java&gt;Code Generation&gt;Code and Comments
 */
package org.eclipse.cdt.internal.ui.text.contentassist;

import org.eclipse.cdt.core.parser.NullSourceElementRequestor;

/**
 * @author hamer
 *
 * This class is the source element requestor used by the completion engine.
 */
public class ContentAssistElementRequestor extends NullSourceElementRequestor {

}
