1
1
/*******************************************************************************
2
* Copyright (c) 2005, 2012 IBM Corporation and others.
2
* Copyright (c) 2005, 2013 IBM Corporation and others.
3
3
* All rights reserved. This program and the accompanying materials
4
4
* are made available under the terms of the Eclipse Public License v1.0
5
5
* which accompanies this distribution, and is available at
9
9
* Andrew Niefer (IBM) - Initial API and implementation
10
10
* Markus Schorn (Wind River Systems)
11
11
* Thomas Corbat (IFS)
12
13
*******************************************************************************/
13
14
package org.eclipse.cdt.internal.core.dom.parser.cpp;
15
16
import org.eclipse.cdt.core.dom.ast.IBinding;
16
17
import org.eclipse.cdt.core.dom.ast.IType;
18
import org.eclipse.cdt.core.dom.ast.cpp.ICPPClassSpecialization;
17
19
import org.eclipse.cdt.core.dom.ast.cpp.ICPPClassType;
18
20
import org.eclipse.cdt.core.dom.ast.cpp.ICPPFunctionType;
19
21
import org.eclipse.cdt.core.dom.ast.cpp.ICPPMethod;
22
import org.eclipse.cdt.core.dom.ast.cpp.ICPPTemplateParameter;
20
23
import org.eclipse.cdt.core.dom.ast.cpp.ICPPTemplateParameterMap;
23
26
* The specialization of a method template in the context of a class specialization.
25
public class CPPMethodTemplateSpecialization extends CPPFunctionTemplateSpecialization
28
public class CPPMethodTemplateSpecialization extends CPPFunctionTemplateSpecialization
26
29
implements ICPPMethod {
30
private ICPPTemplateParameter[] fTemplateParameters;
28
public CPPMethodTemplateSpecialization(ICPPMethod specialized, ICPPClassType owner,
32
public CPPMethodTemplateSpecialization(ICPPMethod specialized, ICPPClassSpecialization owner,
29
33
ICPPTemplateParameterMap ctmap, ICPPFunctionType type, IType[] exceptionSpecs) {
30
34
super(specialized, owner, ctmap, type, exceptionSpecs);
37
public void setTemplateParameters(ICPPTemplateParameter[] templateParameters) {
38
fTemplateParameters = templateParameters;
42
public ICPPTemplateParameter[] getTemplateParameters() {
43
return fTemplateParameters;
34
47
public boolean isVirtual() {
35
48
IBinding m = getSpecializedBinding();