AbstractCompiler (cpptasks 1.0b5 API)
Keywords: net.sf.antcontrib.cpptasks.compiler.AbstractCompiler class

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## net.sf.antcontrib.cpptasks.compiler
Class AbstractCompiler

    java.lang.Object
      net.sf.antcontrib.cpptasks.compiler.AbstractProcessor
          net.sf.antcontrib.cpptasks.compiler.AbstractCompiler

All Implemented Interfaces:
  java.lang.Cloneable, Compiler, Processor

Direct Known Subclasses:
  CommandLineCompiler

    public abstract class AbstractCompiler

extends AbstractProcessor
implements Compiler

An abstract compiler implementation.

Author:
  Adam Murdoch, Curt Arnold

Field Summary

Fields inherited from class net.sf.antcontrib.cpptasks.compiler.AbstractProcessor
`DEFAULT_DISCARD_BID, DEFAULT_PROCESS_BID`

Constructor Summary
`protected` | `AbstractCompiler(java.lang.String[] sourceExtensions, java.lang.String[] headerExtensions, java.lang.String outputSuffix)`

Method Summary
`protected boolean` | `canParse(java.io.File sourceFile)` Checks file name to see if parse should be attempted Default implementation returns false for files with extensions '.dll', 'tlb', '.res'
`protected abstract CompilerConfiguration` | `createConfiguration(CCTask task, LinkType linkType, ProcessorDef[] baseConfigs, CompilerDef specificConfig, TargetDef targetPlatform, VersionInfo versionInfo)`
`ProcessorConfiguration` | `createConfiguration(CCTask task, LinkType linkType, ProcessorDef[] baseConfigs, ProcessorDef specificConfig, TargetDef targetPlatform, VersionInfo versionInfo)` Returns the compiler configuration for or element.
`protected abstract Parser` | `createParser(java.io.File sourceFile)`
`protected java.lang.String` | `getBaseOutputName(java.lang.String inputFile)`
`java.lang.String[]` | `getOutputFileNames(java.lang.String inputFile, VersionInfo versionInfo)` Output file name (no path components) corresponding to source file
`DependencyInfo` | `parseIncludes(CCTask task, java.io.File source, java.io.File[] includePath, java.io.File[] sysIncludePath, java.io.File[] envIncludePath, java.io.File baseDir, java.lang.String includePathIdentifier)` Returns dependency info for the specified source file
`protected boolean` | `resolveInclude(java.lang.String includeName, java.io.File[] includePath, java.util.Vector onThisPath)`

Methods inherited from class net.sf.antcontrib.cpptasks.compiler.AbstractProcessor
`bid, changeEnvironment, clone, getHeaderExtensions, getIdentifier, getIdentifier, getOSArch, getOSName, getSourceExtensions, isDarwin, toString`

Methods inherited from class java.lang.Object
`equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Methods inherited from interface net.sf.antcontrib.cpptasks.compiler.Processor
`bid, changeEnvironment, getIdentifier, getLinker`

Constructor Detail

### AbstractCompiler

    protected AbstractCompiler(java.lang.String[] sourceExtensions,
                               java.lang.String[] headerExtensions,
                               java.lang.String outputSuffix)

Method Detail

### canParse

    protected boolean canParse(java.io.File sourceFile)

  Checks file name to see if parse should be attempted Default implementation returns false for files with extensions '.dll', 'tlb', '.res'

### createConfiguration

    protected abstract CompilerConfiguration createConfiguration(CCTask task,
                                                                 LinkType linkType,
                                                                 ProcessorDef[] baseConfigs,
                                                                 CompilerDef specificConfig,
                                                                 TargetDef targetPlatform,
                                                                 VersionInfo versionInfo)

### createConfiguration

    public ProcessorConfiguration createConfiguration(CCTask task,
                                                      LinkType linkType,
                                                      ProcessorDef[] baseConfigs,
                                                      ProcessorDef specificConfig,
                                                      TargetDef targetPlatform,
                                                      VersionInfo versionInfo)

  Description copied from interface: `Processor`
  Returns the compiler configuration for or element.

  Specified by:
    `createConfiguration` in interface `Processor`
    `baseConfigs` - When specificConfig corresponds to a or linker element, defaultProvider will be a zero to two element array. If there is an extends attribute, the first element will be the referenced ProcessorDef, unless inherit = false, the last element will be the containing element
    `specificConfig` - A or element.
  Returns:
    resulting configuration

### createParser

    protected abstract Parser createParser(java.io.File sourceFile)

### getBaseOutputName

    protected java.lang.String getBaseOutputName(java.lang.String inputFile)

### getOutputFileNames

    public java.lang.String[] getOutputFileNames(java.lang.String inputFile,
                                                 VersionInfo versionInfo)

  Description copied from interface: `Processor`
  Output file name (no path components) corresponding to source file

  Specified by:
    `getOutputFileNames` in interface `Processor`
  Parameters:
    `inputFile` - input file
  Returns:
    output file name or null if no output file or name not determined by input file

### parseIncludes

    public final DependencyInfo parseIncludes(CCTask task,
                                              java.io.File source,
                                              java.io.File[] includePath,
                                              java.io.File[] sysIncludePath,
                                              java.io.File[] envIncludePath,
                                              java.io.File baseDir,
                                              java.lang.String includePathIdentifier)

  Returns dependency info for the specified source file

  Parameters:
    `task` - task for any diagnostic output
    `source` - file to be parsed
    `includePath` - include path to be used to resolve included files
    `sysIncludePath` - sysinclude path from build file, files resolved using sysInclude path will not participate in dependency analysis
    `envIncludePath` - include path from environment variable, files resolved with envIncludePath will not participate in dependency analysis
    `baseDir` - used to produce relative paths in DependencyInfo
    `includePathIdentifier` - used to distinguish DependencyInfo's from different include path settings

### resolveInclude

    protected boolean resolveInclude(java.lang.String includeName,
                                     java.io.File[] includePath,
                                     java.util.Vector onThisPath)

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2001-2008 Ant-Contrib Project. All Rights Reserved.