/******************************************************************************* * Copyright (c) 2006, 2010 Wind River Systems, Inc. and others. * 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: * Markus Schorn - initial API and implementation *******************************************************************************/ package org.eclipse.cdt.core.dom; /** * Represents a linkage under which bindings are stored in the index. * @since 4.0 * * @noextend This interface is not intended to be extended by clients. * @noimplement This interface is not intended to be implemented by clients. */ public interface ILinkage { final static String NO_LINKAGE_NAME= "none"; //$NON-NLS-1$ final static String C_LINKAGE_NAME= "C"; //$NON-NLS-1$ final static String CPP_LINKAGE_NAME= "C++"; //$NON-NLS-1$ final static String FORTRAN_LINKAGE_NAME= "Fortran"; //$NON-NLS-1$ /** * @since 5.1 */ final static String OBJC_LINKAGE_NAME= "Objective-C"; //$NON-NLS-1$ final static int NO_LINKAGE_ID= 0; final static int CPP_LINKAGE_ID= 1; final static int C_LINKAGE_ID= 2; final static int FORTRAN_LINKAGE_ID= 3; /** * @since 5.1 */ final static int OBJC_LINKAGE_ID= 4; /** * Additional linkage ids may be added in future. */ @Deprecated final static int MAX_LINKAGE_ID= FORTRAN_LINKAGE_ID; /** * Returns the name of the linkage. */ String getLinkageName(); /** * Returns a unique id for the linkage. */ int getLinkageID(); }