jif
Class ExtensionInfo

java.lang.Object
  extended by polyglot.frontend.AbstractExtensionInfo
      extended by polyglot.frontend.ParserlessJLExtensionInfo
          extended by polyglot.frontend.JLExtensionInfo
              extended by jif.ExtensionInfo
All Implemented Interfaces:
polyglot.frontend.ExtensionInfo

public class ExtensionInfo
extends polyglot.frontend.JLExtensionInfo

The configuration information of the Jif extension. Compiling passes and corresponding visitors:


Nested Class Summary
static class ExtensionInfo.JifJobExt
           
 
Field Summary
protected  OutputExtensionInfo jlext
           
static java.util.Set topics
           
 
Fields inherited from class polyglot.frontend.AbstractExtensionInfo
compiler, nf, scheduler, source_loader, stats, target_factory, ts
 
Constructor Summary
ExtensionInfo()
           
 
Method Summary
 java.lang.String compilerName()
           
 polyglot.frontend.FileSource createFileSource(java.io.File f, boolean user)
           
 LabelChecker createLabelChecker(polyglot.frontend.Job job, boolean solvePerClassBody, boolean solvePerMethod, boolean doLabelSubst)
           
protected  polyglot.ast.NodeFactory createNodeFactory()
           
protected  polyglot.main.Options createOptions()
           
protected  polyglot.frontend.Scheduler createScheduler()
           
protected  polyglot.types.TypeSystem createTypeSystem()
           
 java.lang.String defaultFileExtension()
           
 polyglot.frontend.goals.Goal getCompileGoal(polyglot.frontend.Job job)
           
 JifOptions getJifOptions()
           
 void initCompiler(polyglot.frontend.Compiler compiler)
           
protected  void initTypeSystem()
           
protected  polyglot.types.TypeSystem jlTypeSystem()
           
 polyglot.frontend.JobExt jobExt()
           
 polyglot.frontend.Parser parser(java.io.Reader reader, polyglot.frontend.FileSource source, polyglot.util.ErrorQueue eq)
           
 polyglot.main.Version version()
           
 
Methods inherited from class polyglot.frontend.ParserlessJLExtensionInfo
makeLoadedClassResolver
 
Methods inherited from class polyglot.frontend.AbstractExtensionInfo
compiler, createClassFile, defaultFileExtensions, fileExtensions, getOptions, getStats, nodeFactory, scheduler, sourceLoader, targetFactory, toString, typeSystem
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

jlext

protected OutputExtensionInfo jlext

topics

public static java.util.Set topics
Constructor Detail

ExtensionInfo

public ExtensionInfo()
Method Detail

defaultFileExtension

public java.lang.String defaultFileExtension()
Specified by:
defaultFileExtension in interface polyglot.frontend.ExtensionInfo
Overrides:
defaultFileExtension in class polyglot.frontend.ParserlessJLExtensionInfo

compilerName

public java.lang.String compilerName()
Specified by:
compilerName in interface polyglot.frontend.ExtensionInfo
Overrides:
compilerName in class polyglot.frontend.ParserlessJLExtensionInfo

createOptions

protected polyglot.main.Options createOptions()
Overrides:
createOptions in class polyglot.frontend.AbstractExtensionInfo

getJifOptions

public JifOptions getJifOptions()

jlTypeSystem

protected polyglot.types.TypeSystem jlTypeSystem()

createTypeSystem

protected polyglot.types.TypeSystem createTypeSystem()
Overrides:
createTypeSystem in class polyglot.frontend.ParserlessJLExtensionInfo

initCompiler

public void initCompiler(polyglot.frontend.Compiler compiler)
Specified by:
initCompiler in interface polyglot.frontend.ExtensionInfo
Overrides:
initCompiler in class polyglot.frontend.AbstractExtensionInfo

initTypeSystem

protected void initTypeSystem()
Overrides:
initTypeSystem in class polyglot.frontend.ParserlessJLExtensionInfo

createNodeFactory

protected polyglot.ast.NodeFactory createNodeFactory()
Overrides:
createNodeFactory in class polyglot.frontend.ParserlessJLExtensionInfo

version

public polyglot.main.Version version()
Specified by:
version in interface polyglot.frontend.ExtensionInfo
Overrides:
version in class polyglot.frontend.ParserlessJLExtensionInfo

parser

public polyglot.frontend.Parser parser(java.io.Reader reader,
                                       polyglot.frontend.FileSource source,
                                       polyglot.util.ErrorQueue eq)
Specified by:
parser in interface polyglot.frontend.ExtensionInfo
Overrides:
parser in class polyglot.frontend.JLExtensionInfo

jobExt

public polyglot.frontend.JobExt jobExt()
Specified by:
jobExt in interface polyglot.frontend.ExtensionInfo
Overrides:
jobExt in class polyglot.frontend.ParserlessJLExtensionInfo

createScheduler

protected polyglot.frontend.Scheduler createScheduler()
Overrides:
createScheduler in class polyglot.frontend.ParserlessJLExtensionInfo

createLabelChecker

public LabelChecker createLabelChecker(polyglot.frontend.Job job,
                                       boolean solvePerClassBody,
                                       boolean solvePerMethod,
                                       boolean doLabelSubst)

getCompileGoal

public polyglot.frontend.goals.Goal getCompileGoal(polyglot.frontend.Job job)
Specified by:
getCompileGoal in interface polyglot.frontend.ExtensionInfo
Overrides:
getCompileGoal in class polyglot.frontend.ParserlessJLExtensionInfo

createFileSource

public polyglot.frontend.FileSource createFileSource(java.io.File f,
                                                     boolean user)
                                              throws java.io.IOException
Specified by:
createFileSource in interface polyglot.frontend.ExtensionInfo
Overrides:
createFileSource in class polyglot.frontend.AbstractExtensionInfo
Throws:
java.io.IOException