jif
Class ExtensionInfo
java.lang.Object
polyglot.frontend.AbstractExtensionInfo
polyglot.frontend.ParserlessJLExtensionInfo
polyglot.frontend.JLExtensionInfo
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:
- ... clean super barrier, inherited from the jl extension
- rewrite argument labels,
RewriteArgsVisitor
- add dummy fields,
AddDummyFieldsVisitor
- clean signatures, inherited from the jl extension
- resolve field labels,
FieldLabelResolver
- ... check exceptions, inherited from the jl extension
- (barrier) check labels,
LabelChecker
- serialization
- translation,
JifTranslator
Fields inherited from class polyglot.frontend.AbstractExtensionInfo |
compiler, nf, scheduler, source_loader, stats, target_factory, ts |
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 |
jlext
protected OutputExtensionInfo jlext
topics
public static java.util.Set topics
ExtensionInfo
public ExtensionInfo()
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