jltools.frontend
Class Job

java.lang.Object
  |
  +--jltools.frontend.Job
Direct Known Subclasses:
ExtensionInfo.JLJob

public abstract class Job
extends java.lang.Object

A Job encapsulates work done by the compiler on behalf of one source file. It includes all information carried between phases of the compiler.


Field Summary
protected  Node ast
          The AST constructed from the source file.
protected  Compiler compiler
          The compiler which performs work for the job.
protected  ImportTable it
          The import table constructed from the source file.
protected  Source source
          The source file for the job.
 
Constructor Summary
Job(Source s, Compiler c)
          Construct a new job for a given source and compiler.
 
Method Summary
 Node ast()
          Get the job's AST.
 void ast(Node ast)
          Set the job's AST.
abstract  Pass buildPass()
          The build types pass.
 Compiler compiler()
          The compiler which performs work for the job.
abstract  Pass disambTypesPass()
          The disambiguate types pass.
 void dump(CodeWriter cw)
           
 boolean equals(java.lang.Object o)
           
 int hashCode()
           
 ImportTable importTable()
          The import table constructed from the source file.
 Source source()
          The source file for the job.
 java.lang.String toString()
           
abstract  Pass translatePass()
          The translate pass.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

source

protected Source source
The source file for the job.

compiler

protected Compiler compiler
The compiler which performs work for the job.

it

protected ImportTable it
The import table constructed from the source file.

ast

protected Node ast
The AST constructed from the source file.
Constructor Detail

Job

public Job(Source s,
           Compiler c)
Construct a new job for a given source and compiler.
Method Detail

ast

public Node ast()
Get the job's AST.

ast

public void ast(Node ast)
Set the job's AST.

buildPass

public abstract Pass buildPass()
The build types pass.

disambTypesPass

public abstract Pass disambTypesPass()
The disambiguate types pass.

translatePass

public abstract Pass translatePass()
The translate pass.

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

hashCode

public int hashCode()
Overrides:
hashCode in class java.lang.Object

equals

public boolean equals(java.lang.Object o)
Overrides:
equals in class java.lang.Object

compiler

public Compiler compiler()
The compiler which performs work for the job.

importTable

public ImportTable importTable()
The import table constructed from the source file.

source

public Source source()
The source file for the job.

dump

public void dump(CodeWriter cw)