org.eclipse.jet.compiler
Class JET2CompilationUnit

java.lang.Object
  extended byorg.eclipse.jet.compiler.JET2ASTElement
      extended byorg.eclipse.jet.compiler.JET2CompilationUnit

public final class JET2CompilationUnit
extends JET2ASTElement

Represent a compilation unit (a template) in the JET2 AST.


Constructor Summary
JET2CompilationUnit()
           
JET2CompilationUnit(IFile file)
           
 
Method Summary
 void accept(JET2ASTVisitor visitor)
          Visit the AST and its contained elements.
 void addImports(java.util.List list)
           
 void createProblem(org.eclipse.jet.internal.parser.ParseProblemSeverity error, int problemId, java.lang.String message, java.lang.Object[] messageArgs, int start, int end, int line, int colOffset)
          Create a new problem on the compilation unit
 java.util.List getBodyElements()
          Return a List of JET2 AST element (@link JET2ASTElement} instances.
 java.util.Set getImports()
           
 java.lang.String getOutputJavaClassName()
          Return the unqualified name of the Java class into which the compilation unit will be compiled.
 java.lang.String getOutputJavaPackage()
          Return the name of the Java package to which the compilation unit will be compiled.
 java.util.List getProblems()
          Return a list of problems discovered in the compilation unit
 TagLibraryReference[] getTagLibraryReferences()
          Return an array of tag libraries referenced by this template.
 boolean hasErrors()
          Test if the compilation unit has any errors
 boolean hasWarnings()
          Test if the compilation unit has any warnings
 void parse()
           
 void parse(java.io.InputStream contents, java.lang.String charset)
           
 void parse(java.lang.String document)
           
 boolean removeLineWhenOtherwiseEmpty()
          Indicate whether the the surrounding whitespace, including the trailing new line should be removed from the template output.
 void setOutputJavaClassName(java.lang.String outputJavaClassName)
          Set the unqualifeid name of the Java class into which the compilation unit will be compiled.
 void setOutputJavaPackage(java.lang.String outputJavaPackage)
          Set the Java package into which the compilation unit will be compiled.
 void setPredefinedTagLibraries(java.util.Map predefinedLibraryMap)
          Define tag library prefixes (and associated tag library ids) that are automatically available to the transform.
 
Methods inherited from class org.eclipse.jet.compiler.JET2ASTElement
getColumn, getEnd, getLine, getNextElement, getParent, getPrevElement, getStart
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

JET2CompilationUnit

public JET2CompilationUnit()

JET2CompilationUnit

public JET2CompilationUnit(IFile file)
Method Detail

setPredefinedTagLibraries

public void setPredefinedTagLibraries(java.util.Map predefinedLibraryMap)
Define tag library prefixes (and associated tag library ids) that are automatically available to the transform.

Parameters:
predefinedLibraryMap - a map from prefix to tag library id.

parse

public void parse(java.lang.String document)

parse

public void parse()
           throws CoreException
Throws:
CoreException

parse

public void parse(java.io.InputStream contents,
                  java.lang.String charset)

getBodyElements

public final java.util.List getBodyElements()
Return a List of JET2 AST element (@link JET2ASTElement} instances.

Returns:
a List. The empty list of there are no body elements.

accept

public void accept(JET2ASTVisitor visitor)
Description copied from class: JET2ASTElement
Visit the AST and its contained elements.

Specified by:
accept in class JET2ASTElement
Parameters:
visitor -
See Also:
JET2ASTElement.accept(org.eclipse.jet.compiler.JET2ASTVisitor)

getProblems

public java.util.List getProblems()
Return a list of problems discovered in the compilation unit

Returns:
a List of Problem objects. The empty list is returned if no problems were found.

hasErrors

public boolean hasErrors()
Test if the compilation unit has any errors

Returns:
true if the compilation unit had errors, false otherwise.

hasWarnings

public boolean hasWarnings()
Test if the compilation unit has any warnings

Returns:
true if the compilation unit had warnings, false otherwise.

createProblem

public void createProblem(org.eclipse.jet.internal.parser.ParseProblemSeverity error,
                          int problemId,
                          java.lang.String message,
                          java.lang.Object[] messageArgs,
                          int start,
                          int end,
                          int line,
                          int colOffset)
Create a new problem on the compilation unit

Parameters:
error - the severity of the problem
problemId - the problem id. A value from Problem static files
message - an error message, with optional replacement tokens
messageArgs - the error message arguments
start - the start offset of the problem (doc relative)
end - the end offset of the problem (doc relative)
line - the line number of the problem (1 based)
colOffset - TODO

getOutputJavaPackage

public java.lang.String getOutputJavaPackage()
Return the name of the Java package to which the compilation unit will be compiled.

Returns:
a string

getOutputJavaClassName

public java.lang.String getOutputJavaClassName()
Return the unqualified name of the Java class into which the compilation unit will be compiled.

Returns:
Returns the outputJavaClassName.

setOutputJavaClassName

public void setOutputJavaClassName(java.lang.String outputJavaClassName)
Set the unqualifeid name of the Java class into which the compilation unit will be compiled.

Parameters:
outputJavaClassName - The outputJavaClassName to set.

setOutputJavaPackage

public void setOutputJavaPackage(java.lang.String outputJavaPackage)
Set the Java package into which the compilation unit will be compiled.

Parameters:
outputJavaPackage - The outputJavaPackage to set.

removeLineWhenOtherwiseEmpty

public boolean removeLineWhenOtherwiseEmpty()
Description copied from class: JET2ASTElement
Indicate whether the the surrounding whitespace, including the trailing new line should be removed from the template output. In general, elements that create output should return false, while element that do should should return true.

Specified by:
removeLineWhenOtherwiseEmpty in class JET2ASTElement
Returns:
true if the containing line should be removed if otherwise empty.

getTagLibraryReferences

public TagLibraryReference[] getTagLibraryReferences()
Return an array of tag libraries referenced by this template.

Returns:
a possibly empty array of tag library references.

addImports

public void addImports(java.util.List list)

getImports

public java.util.Set getImports()

Copyright 2006 IBM Corporation and others.
All Rights Reserved.