public ClassGenerator(String class_name, String super_class_name, String file_name, int access_flags, String[] interfaces, Stylesheet stylesheet) { super(class_name, super_class_name, file_name, access_flags, interfaces); _stylesheet = stylesheet; _parser = stylesheet.getParser(); _aloadTranslet = new ALOAD(TRANSLET_INDEX); if (stylesheet.isMultiDocument()) { _domClass = "org.apache.xalan.xsltc.dom.MultiDOM"; _domClassSig = "Lorg/apache/xalan/xsltc/dom/MultiDOM;"; } else { _domClass = "org.apache.xalan.xsltc.dom.DOMAdapter"; _domClassSig = "Lorg/apache/xalan/xsltc/dom/DOMAdapter;"; } _applyTemplatesSig = "(" + Constants.DOM_INTF_SIG + Constants.NODE_ITERATOR_SIG + Constants.TRANSLET_OUTPUT_SIG + ")V"; _applyTemplatesSigForImport = "(" + Constants.DOM_INTF_SIG + Constants.NODE_ITERATOR_SIG + Constants.TRANSLET_OUTPUT_SIG + Constants.NODE_FIELD_SIG + ")V"; }
private QName makeStylesheetName(String prefix) { return getParser().getQName(prefix+getXSLTC().nextStylesheetSerial()); }
ErrorMsg err = new ErrorMsg(ErrorMsg.CIRCULAR_VARIABLE_ERR, input.toString(), this); getParser().reportError(Constants.ERROR, err); return(result);
public void setImportPrecedence(final int precedence) { // Set import precedence for this stylesheet _importPrecedence = precedence; // Set import precedence for all included stylesheets final Enumeration elements = elements(); while (elements.hasMoreElements()) { SyntaxTreeNode child = (SyntaxTreeNode)elements.nextElement(); if (child instanceof Include) { Stylesheet included = ((Include)child).getIncludedStylesheet(); if (included != null && included._includedFrom == this) { included.setImportPrecedence(precedence); } } } // Set import precedence for the stylesheet that imported this one if (_importedFrom != null) { if (_importedFrom.getImportPrecedence() < precedence) { final Parser parser = getParser(); final int nextPrecedence = parser.getNextImportPrecedence(); _importedFrom.setImportPrecedence(nextPrecedence); } } // Set import precedence for the stylesheet that included this one else if (_includedFrom != null) { if (_includedFrom.getImportPrecedence() != precedence) _includedFrom.setImportPrecedence(precedence); } }
compileConstructor(classGen, _lastOutputElement); if (!getParser().errorsFound()) { getXSLTC().dumpClass(classGen.getJavaClass());
private QName makeStylesheetName(String prefix) { return getParser().getQName(prefix+getXSLTC().nextStylesheetSerial()); }
public ClassGenerator(String class_name, String super_class_name, String file_name, int access_flags, String[] interfaces, Stylesheet stylesheet) { super(class_name, super_class_name, file_name, access_flags, interfaces); _stylesheet = stylesheet; _parser = stylesheet.getParser(); _aloadTranslet = new ALOAD(TRANSLET_INDEX); if (stylesheet.isMultiDocument()) { _domClass = "org.apache.xalan.xsltc.dom.MultiDOM"; _domClassSig = "Lorg/apache/xalan/xsltc/dom/MultiDOM;"; } else { _domClass = "org.apache.xalan.xsltc.dom.DOMAdapter"; _domClassSig = "Lorg/apache/xalan/xsltc/dom/DOMAdapter;"; } _applyTemplatesSig = "(" + Constants.DOM_INTF_SIG + Constants.NODE_ITERATOR_SIG + Constants.TRANSLET_OUTPUT_SIG + ")V"; _applyTemplatesSigForImport = "(" + Constants.DOM_INTF_SIG + Constants.NODE_ITERATOR_SIG + Constants.TRANSLET_OUTPUT_SIG + Constants.NODE_FIELD_SIG + ")V"; }
ErrorMsg err = new ErrorMsg(ErrorMsg.CIRCULAR_VARIABLE_ERR, input.toString(), this); getParser().reportError(Constants.ERROR, err); return(result);
public void setImportPrecedence(final int precedence) { // Set import precedence for this stylesheet _importPrecedence = precedence; // Set import precedence for all included stylesheets final Enumeration elements = elements(); while (elements.hasMoreElements()) { SyntaxTreeNode child = (SyntaxTreeNode)elements.nextElement(); if (child instanceof Include) { Stylesheet included = ((Include)child).getIncludedStylesheet(); if (included != null && included._includedFrom == this) { included.setImportPrecedence(precedence); } } } // Set import precedence for the stylesheet that imported this one if (_importedFrom != null) { if (_importedFrom.getImportPrecedence() < precedence) { final Parser parser = getParser(); final int nextPrecedence = parser.getNextImportPrecedence(); _importedFrom.setImportPrecedence(nextPrecedence); } } // Set import precedence for the stylesheet that included this one else if (_includedFrom != null) { if (_includedFrom.getImportPrecedence() != precedence) _includedFrom.setImportPrecedence(precedence); } }
compileConstructor(classGen, _lastOutputElement); if (!getParser().errorsFound()) { getXSLTC().dumpClass(classGen.getJavaClass());