org.apache.xalan.xsltc.compiler

Class Stylesheet

Implemented Interfaces:
Constants, InstructionConstants

public final class Stylesheet
extends SyntaxTreeNode

Authors:
Jacek Ambroziak
Santiago Pericas-Geertsen
Morten Jorgensen

Field Summary

static int
HTML_OUTPUT
static int
TEXT_OUTPUT
static int
UNKNOWN_OUTPUT
static int
XML_OUTPUT
Stylesheet
_importedFrom
Reference to the stylesheet from which this stylesheet was imported (if any).
Stylesheet
_includedFrom
Reference to the stylesheet from which this stylesheet was included (if any).

Fields inherited from interface org.apache.xalan.xsltc.compiler.Constants

ABSOLUTE_ITERATOR, ACC_FINAL, ACC_PRIVATE, ACC_PROTECTED, ACC_PUBLIC, ACC_STATIC, ACC_SUPER, ADD_ATTRIBUTE, ADD_ATTRIBUTE_SIG, ADD_ITERATOR, ADD_ITERATOR_SIG, ADD_PARAMETER, ADD_PARAMETER_SIG, APPLY_TEMPLATES, ATTRIBUTES_SIG, ATTRIBUTE_LIST_FIELD, ATTRIBUTE_LIST_IMPL_CLASS, ATTRIBUTE_LIST_IMPL_SIG, ATTR_SET_SIG, BASIS_LIBRARY_CLASS, BOOLEAN_CLASS, BOOLEAN_VALUE, BOOLEAN_VALUE_SIG, CACHED_NODE_LIST_ITERATOR_CLASS, CALL_FUNCTION_CLASS, CHARACTERS, CHARACTERSW, CHARACTERSW_SIG, CHARACTERS_SIG, CLEAR_ATTRIBUTES, CLEAR_ATTRIBUTES_SIG, COLLATOR_CLASS, COLLATOR_SIG, COMPILER_PACKAGE, CURRENT_NODE_LIST_FILTER, CURRENT_NODE_LIST_FILTER_SIG, CURRENT_NODE_LIST_ITERATOR, CURRENT_NODE_LIST_ITERATOR_SIG, DEFAULT_NODE_COUNTER, DEFAULT_NODE_COUNTER_SIG, DOCUMENT_PNAME, DOM_ADAPTER_CLASS, DOM_ADAPTER_SIG, DOM_FIELD, DOM_IMPL, DOM_IMPL_CLASS, DOM_IMPL_SIG, DOM_INTF, DOM_INTF_SIG, DOM_PNAME, DOUBLE_CLASS, DOUBLE_SIG, DOUBLE_VALUE, DOUBLE_VALUE_SIG, DUP_FILTERED_ITERATOR, EMPTYATTR_FIELD, EMPTYSTRING, ERROR, FALLBACK_CLASS, FATAL, FILTER_INTERFACE, FILTER_INTERFACE_SIG, FILTER_ITERATOR, FILTER_STEP_ITERATOR, FORMAT_SYMBOLS_FIELD, GET_ATTRIBUTE_VALUE, GET_ATTRIBUTE_VALUE_SIG, GET_CHILDREN, GET_CHILDREN_SIG, GET_ELEMENT_VALUE, GET_ELEMENT_VALUE_SIG, GET_ITERATOR_SIG, GET_NODE_NAME, GET_NODE_NAME_SIG, GET_NODE_TYPE, GET_NODE_TYPE_SIG, GET_NODE_VALUE, GET_NODE_VALUE_ITERATOR, GET_NODE_VALUE_ITERATOR_SIG, GET_NODE_VALUE_SIG, GET_PARAMETER, GET_PARAMETER_SIG, GET_PARENT, GET_PARENT_SIG, GET_TYPED_CHILDREN, GET_TYPED_CHILDREN_SIG, GET_UNPARSED_ENTITY_URI, GET_UNPARSED_ENTITY_URI_SIG, HASIDCALL_INDEX, HASIDCALL_INDEX_SIG, HAS_ATTRIBUTE, HAS_ATTRIBUTE_SIG, INTEGER_CLASS, INTEGER_SIG, INTERNAL, INT_VALUE, INT_VALUE_SIG, INVOKE_METHOD, ITERATOR_FIELD_SIG, ITERATOR_PNAME, KEY_INDEX_CLASS, KEY_INDEX_SIG, LAST_INDEX, LOAD_DOCUMENT_CLASS, LOCALE_CLASS, LOCALE_SIG, MAKE_NODE, MAKE_NODE_LIST, MAKE_NODE_LIST_SIG, MAKE_NODE_LIST_SIG2, MAKE_NODE_SIG, MAKE_NODE_SIG2, MATCHING_ITERATOR, MATH_CLASS, MULTI_DOM_CLASS, MULTI_DOM_SIG, NAMESPACE_FEATURE, NAMESPACE_INDEX, NAMESPACE_INDEX_SIG, NAMES_INDEX, NAMES_INDEX_SIG, NEXT, NEXTID, NEXT_SIG, NODE, NODE_COUNTER, NODE_COUNTER_SIG, NODE_FIELD, NODE_FIELD_SIG, NODE_ITERATOR, NODE_ITERATOR_BASE, NODE_ITERATOR_SIG, NODE_PNAME, NODE_SIG, NODE_SORT_FACTORY, NODE_SORT_FACTORY_SIG, NODE_SORT_RECORD, NODE_SORT_RECORD_SIG, NTH_ITERATOR_CLASS, OBJECT_CLASS, OBJECT_SIG, ORDER_ITERATOR, ORDER_ITERATOR_SIG, OUTPUT_BASE, OUTPUT_HANDLER, OUTPUT_HANDLER_SIG, POP_PARAM_FRAME, POP_PARAM_FRAME_SIG, POSITION_INDEX, PUSH_PARAM_FRAME, PUSH_PARAM_FRAME_SIG, REDIRECT_URI, RESET, RESET_SIG, RTF_INITIAL_SIZE, RUNTIME_NODE_CLASS, RUNTIME_PACKAGE, SAX_IMPL, SAX_IMPL_CLASS, SAX_IMPL_SIG, SET_START_NODE, SET_START_NODE_SIG, SINGLETON_ITERATOR, SORT_ITERATOR, SORT_ITERATOR_SIG, STATIC_CHAR_DATA_FIELD, STATIC_CHAR_DATA_FIELD_SIG, STATIC_NAMESPACE_ARRAY_FIELD, STATIC_NAMES_ARRAY_FIELD, STATIC_TYPES_ARRAY_FIELD, STATIC_URIS_ARRAY_FIELD, STEP_ITERATOR_CLASS, STREAM_XML_OUTPUT, STRING, STRING_BUFFER_CLASS, STRING_BUFFER_SIG, STRING_CLASS, STRING_SIG, STRING_TO_INT, STRING_TO_INT_SIG, STRING_TO_REAL, STRING_TO_REAL_SIG, STRING_VALUE_HANDLER, STRING_VALUE_HANDLER_SIG, STRING_WRITER, STRIP_SPACE, STRIP_SPACE_INTF, STRIP_SPACE_PARAMS, STRIP_SPACE_SIG, TRANSLET_CLASS, TRANSLET_FIELD, TRANSLET_FIELD_SIG, TRANSLET_INTF, TRANSLET_INTF_SIG, TRANSLET_OUTPUT_BASE, TRANSLET_OUTPUT_INTERFACE, TRANSLET_OUTPUT_PNAME, TRANSLET_OUTPUT_SIG, TRANSLET_PNAME, TRANSLET_SIG, TRANSLET_URI, TRANSLET_VERSION_INDEX, TRANSLET_VERSION_INDEX_SIG, TYPES_INDEX, TYPES_INDEX_SIG, UNION_ITERATOR_CLASS, UNION_ITERATOR_SIG, UNSUPPORTED, URIS_INDEX, URIS_INDEX_SIG, WARNING, WRITER_SIG, XHTML_URI, XMLNS_PREFIX, XMLNS_STRING, XMLNS_URI, XSLT_PACKAGE, XSLT_URI

Method Summary

void
addIncludedStylesheet(Stylesheet child)
int
addParam(org.apache.xalan.xsltc.compiler.Param param)
int
addVariable(org.apache.xalan.xsltc.compiler.Variable global)
boolean
callsNodeset()
boolean
checkForLoop(String systemId)
void
display(int indent)
void
excludeExtensionPrefixes(Parser parser)
Vector
getAllValidTemplates()
String
getClassName()
int
getImportPrecedence()
org.apache.xalan.xsltc.compiler.Output
getLastOutputElement()
org.apache.xalan.xsltc.compiler.Mode
getMode(org.apache.xalan.xsltc.compiler.QName modeName)
String
getNamespace(String prefix)
int
getOutputMethod()
Return the output method
Properties
getOutputProperties()
Stylesheet
getParentStylesheet()
SourceLoader
getSourceLoader()
String
getSystemId()
boolean
getTemplateInlining()
Vector
getTemplates()
boolean
hasGlobals()
Returns true if this stylesheet has global vars or params.
boolean
hasLocalParams()
Returns true if at least one template in the stylesheet has params defined.
boolean
isExtension(String uri)
boolean
isMultiDocument()
boolean
isSimplified()
void
numberFormattingUsed()
void
parseContents(Parser parser)
Parse the version and uri fields of the stylesheet and add an entry to the symbol table mapping the name __stylesheet_ to an instance of this class.
void
parseOwnChildren(Parser parser)
Parse all direct children of the element.
void
processModes()
void
setCallsNodeset(boolean flag)
void
setHasIdCall(boolean flag)
void
setImportPrecedence(int precedence)
void
setImportingStylesheet(Stylesheet parent)
void
setIncludingStylesheet(Stylesheet parent)
void
setMultiDocument(boolean flag)
void
setOutputProperties(Properties props)
void
setOutputProperty(String key, String value)
void
setParentStylesheet(Stylesheet parent)
void
setParser(Parser parser)
void
setSimplified()
void
setSourceLoader(SourceLoader loader)
void
setSystemId(String systemId)
void
setTemplateInlining(boolean flag)
void
translate()
Translate the stylesheet into JVM bytecodes.
void
translate(ClassGenerator classGen, MethodGenerator methodGen)
Translate the stylesheet into JVM bytecodes.
Type
typeCheck(org.apache.xalan.xsltc.compiler.SymbolTable stable)
Type check all the children of this node.

Methods inherited from class org.apache.xalan.xsltc.compiler.SyntaxTreeNode

display, getLineNumber, getParser, getStylesheet, parseContents, translate, typeCheck

Field Details

HTML_OUTPUT

public static final int HTML_OUTPUT

Field Value:
2


TEXT_OUTPUT

public static final int TEXT_OUTPUT

Field Value:
3


UNKNOWN_OUTPUT

public static final int UNKNOWN_OUTPUT

Field Value:
0


XML_OUTPUT

public static final int XML_OUTPUT

Field Value:
1


_importedFrom

public Stylesheet _importedFrom
Reference to the stylesheet from which this stylesheet was imported (if any).


_includedFrom

public Stylesheet _includedFrom
Reference to the stylesheet from which this stylesheet was included (if any).

Method Details

addIncludedStylesheet

public void addIncludedStylesheet(Stylesheet child)


addParam

public int addParam(org.apache.xalan.xsltc.compiler.Param param)


addVariable

public int addVariable(org.apache.xalan.xsltc.compiler.Variable global)


callsNodeset

public boolean callsNodeset()


checkForLoop

public boolean checkForLoop(String systemId)


display

public void display(int indent)
Overrides:
display in interface SyntaxTreeNode


excludeExtensionPrefixes

public void excludeExtensionPrefixes(Parser parser)


getAllValidTemplates

public Vector getAllValidTemplates()


getClassName

public String getClassName()


getImportPrecedence

public int getImportPrecedence()


getLastOutputElement

public org.apache.xalan.xsltc.compiler.Output getLastOutputElement()


getMode

public org.apache.xalan.xsltc.compiler.Mode getMode(org.apache.xalan.xsltc.compiler.QName modeName)


getNamespace

public String getNamespace(String prefix)


getOutputMethod

public int getOutputMethod()
Return the output method


getOutputProperties

public Properties getOutputProperties()


getParentStylesheet

public Stylesheet getParentStylesheet()


getSourceLoader

public SourceLoader getSourceLoader()


getSystemId

public String getSystemId()


getTemplateInlining

public boolean getTemplateInlining()


getTemplates

public Vector getTemplates()


hasGlobals

public boolean hasGlobals()
Returns true if this stylesheet has global vars or params.


hasLocalParams

public boolean hasLocalParams()
Returns true if at least one template in the stylesheet has params defined. Uses the variable _hasLocalParams to cache the result.


isExtension

public boolean isExtension(String uri)


isMultiDocument

public boolean isMultiDocument()


isSimplified

public boolean isSimplified()


numberFormattingUsed

public void numberFormattingUsed()


parseContents

public void parseContents(Parser parser)
Parse the version and uri fields of the stylesheet and add an entry to the symbol table mapping the name __stylesheet_ to an instance of this class.
Overrides:
parseContents in interface SyntaxTreeNode


parseOwnChildren

public final void parseOwnChildren(Parser parser)
Parse all direct children of the element.


processModes

public void processModes()


setCallsNodeset

public void setCallsNodeset(boolean flag)


setHasIdCall

public void setHasIdCall(boolean flag)


setImportPrecedence

public void setImportPrecedence(int precedence)


setImportingStylesheet

public void setImportingStylesheet(Stylesheet parent)


setIncludingStylesheet

public void setIncludingStylesheet(Stylesheet parent)


setMultiDocument

public void setMultiDocument(boolean flag)


setOutputProperties

public void setOutputProperties(Properties props)


setOutputProperty

public void setOutputProperty(String key,
                              String value)


setParentStylesheet

public void setParentStylesheet(Stylesheet parent)


setParser

public void setParser(Parser parser)


setSimplified

public void setSimplified()


setSourceLoader

public void setSourceLoader(SourceLoader loader)


setSystemId

public void setSystemId(String systemId)


setTemplateInlining

public void setTemplateInlining(boolean flag)


translate

public void translate()
Translate the stylesheet into JVM bytecodes.


translate

public void translate(ClassGenerator classGen,
                      MethodGenerator methodGen)
Translate the stylesheet into JVM bytecodes.
Overrides:
translate in interface SyntaxTreeNode


typeCheck

public Type typeCheck(org.apache.xalan.xsltc.compiler.SymbolTable stable)
            throws TypeCheckError
Type check all the children of this node.
Overrides:
typeCheck in interface SyntaxTreeNode


Copyright B) 2004 Apache XML Project. All Rights Reserved.