1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-07-19 15:05:36 +02:00

Added linkage-id for objective-c, bug 265748.

This commit is contained in:
Markus Schorn 2009-02-24 16:11:42 +00:00
parent 9f44be00ab
commit 8d7e3e3edb
2 changed files with 16 additions and 1 deletions

View file

@ -23,12 +23,25 @@ public interface ILinkage {
final static String C_LINKAGE_NAME= "C"; //$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 CPP_LINKAGE_NAME= "C++"; //$NON-NLS-1$
final static String FORTRAN_LINKAGE_NAME= "Fortran"; //$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 NO_LINKAGE_ID= 0;
final static int CPP_LINKAGE_ID= 1; final static int CPP_LINKAGE_ID= 1;
final static int C_LINKAGE_ID= 2; final static int C_LINKAGE_ID= 2;
final static int FORTRAN_LINKAGE_ID= 3; 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; final static int MAX_LINKAGE_ID= FORTRAN_LINKAGE_ID;
/** /**

View file

@ -20,8 +20,9 @@ public class Linkage implements ILinkage {
public static final ILinkage C_LINKAGE = new Linkage(C_LINKAGE_ID, C_LINKAGE_NAME); public static final ILinkage C_LINKAGE = new Linkage(C_LINKAGE_ID, C_LINKAGE_NAME);
public static final ILinkage CPP_LINKAGE = new Linkage(CPP_LINKAGE_ID, CPP_LINKAGE_NAME); public static final ILinkage CPP_LINKAGE = new Linkage(CPP_LINKAGE_ID, CPP_LINKAGE_NAME);
public static final ILinkage FORTRAN_LINKAGE = new Linkage(FORTRAN_LINKAGE_ID, FORTRAN_LINKAGE_NAME); public static final ILinkage FORTRAN_LINKAGE = new Linkage(FORTRAN_LINKAGE_ID, FORTRAN_LINKAGE_NAME);
public static final ILinkage OBJC_LINKAGE = new Linkage(OBJC_LINKAGE_ID, OBJC_LINKAGE_NAME);
private static final ILinkage[] LINKAGES= {C_LINKAGE, CPP_LINKAGE, FORTRAN_LINKAGE}; private static final ILinkage[] LINKAGES= {C_LINKAGE, CPP_LINKAGE, FORTRAN_LINKAGE, OBJC_LINKAGE};
public static final ILinkage[] getAllLinkages() { public static final ILinkage[] getAllLinkages() {
return LINKAGES; return LINKAGES;
@ -33,6 +34,7 @@ public class Linkage implements ILinkage {
case C_LINKAGE_ID: return C_LINKAGE_NAME; case C_LINKAGE_ID: return C_LINKAGE_NAME;
case CPP_LINKAGE_ID: return CPP_LINKAGE_NAME; case CPP_LINKAGE_ID: return CPP_LINKAGE_NAME;
case FORTRAN_LINKAGE_ID: return FORTRAN_LINKAGE_NAME; case FORTRAN_LINKAGE_ID: return FORTRAN_LINKAGE_NAME;
case OBJC_LINKAGE_ID: return OBJC_LINKAGE_NAME;
} }
throw new CoreException(CCorePlugin.createStatus("Unsupported linkage id: " + linkageID)); //$NON-NLS-1$ throw new CoreException(CCorePlugin.createStatus("Unsupported linkage id: " + linkageID)); //$NON-NLS-1$
} }