org.eclipse.cdt.managedbuilder.macros
Interface IProjectBuildMacroSupplier
public interface IProjectBuildMacroSupplier
this interface is to be implemented by the tool-integrator
for supplying the project-specific macros
- Since:
- 3.0
getMacro
IBuildMacro getMacro(java.lang.String macroName,
IManagedProject project,
IBuildMacroProvider provider)
- Parameters:
project
- the instance of the managed projectprovider
- the instance of the build macro provider to be used for querying the
build macros from within the supplier. The supplier should use this provider to obtain
the already defined build macros instead of using the �default� provider returned by the
ManagedBuildManager.getBuildMacroProvider().
The provider passed to a supplier will ignore searching macros for the levels
higher than the current supplier level, will query only the lower-precedence suppliers
for the current level and will query all suppliers for the lower levels.
This is done to avoid infinite loops that could be caused if the supplier calls the provider
and the provider in turn calls that supplier again. Also the supplier should not know anything
about the build macros defined for the higher levels.
- Returns:
- the reference to the IBuildMacro interface representing
the build macro of a given name or null if the macro of that name is not defined
getMacros
IBuildMacro[] getMacros(IManagedProject project,
IBuildMacroProvider provider)
- Parameters:
project
- the instance of the managed projectprovider
- the instance of the build macro provider to be used for querying the
build macros from within the supplier. The supplier should use this provider to obtain
the already defined build macros instead of using the �default� provider returned by the
ManagedBuildManager.getBuildMacroProvider().
The provider passed to a supplier will ignore searching macros for the levels
higher than the current supplier level, will query only the lower-precedence suppliers
for the current level and will query all suppliers for the lower levels.
This is done to avoid infinite loops that could be caused if the supplier calls the provider
and the provider in turn calls that supplier again. Also the supplier should not know anything
about the build macros defined for the higher levels.
- Returns:
- the IBuildMacro[] array representing defined macros