Copyright (c) 2000, 2009 IBM Corporation and others.
This program and the accompanying materials
are made available under the terms of the Eclipse Public License 2.0
which accompanies this distribution, and is available at
https://www.eclipse.org/legal/epl-2.0/
SPDX-License-Identifier: EPL-2.0
Contributors:
IBM Corporation - initial API and implementation
/*******************************************************************************
* Copyright (c) 2000, 2009 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
* which accompanies this distribution, and is available at
* https://www.eclipse.org/legal/epl-2.0/
*
* SPDX-License-Identifier: EPL-2.0
*
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
package org.eclipse.jdt.internal.core.search;
import org.eclipse.jdt.core.search.TypeNameRequestor;
import org.eclipse.jdt.internal.compiler.env.AccessRestriction;
Wrapper used to link IRestrictedAccessTypeRequestor
with TypeNameRequestor
. This wrapper specifically allows usage of internal method BasicSearchEngine.searchAllTypeNames(char[] packageName, int packageMatchRule, char[] typeName, int typeMatchRule, int searchFor, IJavaSearchScope scope, IRestrictedAccessTypeRequestor nameRequestor, int waitingPolicy, IProgressMonitor monitor)
. from API method SearchEngine.searchAllTypeNames(char[] packageName, int packageMatchRule, char[] typeName, int matchRule, int searchFor, IJavaSearchScope scope, TypeNameRequestor nameRequestor, int waitingPolicy, IProgressMonitor monitor)
. /**
* Wrapper used to link {@link IRestrictedAccessTypeRequestor} with {@link TypeNameRequestor}.
* This wrapper specifically allows usage of internal method {@link BasicSearchEngine#searchAllTypeNames(
* char[] packageName,
* int packageMatchRule,
* char[] typeName,
* int typeMatchRule,
* int searchFor,
* org.eclipse.jdt.core.search.IJavaSearchScope scope,
* IRestrictedAccessTypeRequestor nameRequestor,
* int waitingPolicy,
* org.eclipse.core.runtime.IProgressMonitor monitor) }.
* from API method {@link org.eclipse.jdt.core.search.SearchEngine#searchAllTypeNames(
* char[] packageName,
* int packageMatchRule,
* char[] typeName,
* int matchRule,
* int searchFor,
* org.eclipse.jdt.core.search.IJavaSearchScope scope,
* TypeNameRequestor nameRequestor,
* int waitingPolicy,
* org.eclipse.core.runtime.IProgressMonitor monitor) }.
*/
public class TypeNameRequestorWrapper implements IRestrictedAccessTypeRequestor {
TypeNameRequestor requestor;
public TypeNameRequestorWrapper(TypeNameRequestor requestor) {
this.requestor = requestor;
}
@Override
public void acceptType(int modifiers, char[] packageName, char[] simpleTypeName, char[][] enclosingTypeNames, String path, AccessRestriction access) {
this.requestor.acceptType(modifiers, packageName, simpleTypeName, enclosingTypeNames, path);
}
}