1 /*******************************************************************************
2  * Copyright (c) 2000, 2003 IBM Corporation and others.
3  * All rights reserved. This program and the accompanying materials
4  * are made available under the terms of the Common Public License v1.0
5  * which accompanies this distribution, and is available at
6  * http://www.eclipse.org/legal/cpl-v10.html
7  *
8  * Contributors:
9  *     IBM Corporation - initial API and implementation
10  *******************************************************************************/
11 package net.sourceforge.phpdt.internal.compiler.impl;
12 
13 import net.sourceforge.phpdt.internal.compiler.env.IBinaryType;
14 import net.sourceforge.phpdt.internal.compiler.env.ICompilationUnit;
15 import net.sourceforge.phpdt.internal.compiler.env.ISourceType;
16 import net.sourceforge.phpdt.internal.compiler.lookup.PackageBinding;
17 
18 public interface ITypeRequestor {
19 
20 	/**
21 	 * Accept the resolved binary form for the requested type.
22 	 */
accept(IBinaryType binaryType, PackageBinding packageBinding)23 	void accept(IBinaryType binaryType, PackageBinding packageBinding);
24 
25 	/**
26 	 * Accept the requested type's compilation unit.
27 	 */
accept(ICompilationUnit unit)28 	void accept(ICompilationUnit unit);
29 
30 	/**
31 	 * Accept the unresolved source forms for the requested type. Note that the
32 	 * multiple source forms can be answered, in case the target compilation
33 	 * unit contains multiple types. The first one is then guaranteed to be the
34 	 * one corresponding to the requested type.
35 	 */
accept(ISourceType[] sourceType, PackageBinding packageBinding)36 	void accept(ISourceType[] sourceType, PackageBinding packageBinding);
37 }
38