/*******************************************************************************
* Copyright (c) 2015, 2016 Institute for Software, HSR Hochschule fuer Technik
* Rapperswil, University of applied sciences.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*
* Contributors:
* Lukas Wegmann (IFS) - Initial API and implementation
*******************************************************************************/
package org.eclipse.cdt.internal.core.index.composite.cpp;
import org.eclipse.cdt.core.dom.ast.ICompositeType;
import org.eclipse.cdt.core.dom.ast.cpp.ICPPClassType;
import org.eclipse.cdt.core.dom.ast.cpp.ICPPField;
import org.eclipse.cdt.core.dom.ast.cpp.ICPPVariableTemplatePartialSpecialization;
import org.eclipse.cdt.internal.core.index.IIndexFragmentBinding;
import org.eclipse.cdt.internal.core.index.composite.ICompositesFactory;
public class CompositeCPPFieldTemplatePartialSpecialization
extends CompositeCPPVariableTemplatePartialSpecialization implements ICPPField {
public CompositeCPPFieldTemplatePartialSpecialization(ICompositesFactory cf,
ICPPVariableTemplatePartialSpecialization delegate) {
super(cf, delegate);
}
@Override
public ICompositeType getCompositeTypeOwner() {
return getClassOwner();
}
@Override
public int getVisibility() {
return ((ICPPField) rbinding).getVisibility();
}
@Override
public ICPPClassType getClassOwner() {
return (ICPPClassType) cf.getCompositeBinding(
(IIndexFragmentBinding) ((ICPPField) rbinding).getClassOwner());
}
@Override
public int getFieldPosition() {
return ((ICPPField) rbinding).getFieldPosition();
}
}