| Modifier and Type | Field and Description |
|---|---|
| private AttributeValue | |
| private String | |
| private List | |
| private AttributeValue | |
| private AttributeValue | |
| private boolean | |
| private AttributeValue | |
| private Expression |
| Access | Constructor and Description |
|---|---|
| pack-priv |
| Modifier and Type | Method and Description |
|---|---|
| public void | addVariable(VariableRefBase variableRef)
Implements com. Add new variable to the closure. |
| private static MethodGenerator | compileExtract(List<Sort> sortObjects, NodeSortRecordGenerator sortRecord, ConstantPoolGen cpg, String className)
Compiles a method that overloads NodeSortRecord.extractValueFromDOM() |
| private static MethodGenerator | compileInit(NodeSortRecordGenerator sortRecord, ConstantPoolGen cpg, String className)
Create a constructor for the new class. |
| private static String | compileSortRecord(List<Sort> sortObjects, ClassGenerator classGen, MethodGenerator methodGen)
Create a new auxillary class extending NodeSortRecord. |
| public static void | compileSortRecordFactory(List<Sort> sortObjects, ClassGenerator classGen, MethodGenerator methodGen)
Compiles code that instantiates a NodeSortRecordFactory object which will produce NodeSortRecord objects of a specific type. |
| public static String | compileSortRecordFactory(List<Sort> sortObjects, ClassGenerator classGen, MethodGenerator methodGen, String sortRecordClass)
|
| public String | getInnerClassName()
Implements com. Returns the name of the auxiliary class or null if this predicate is compiled inside the Translet. |
| public Closure | getParentClosure()
Implements com. Returns a reference to its parent closure or null if outermost. |
| public boolean | inInnerClass()
Implements com. Returns true if this closure is compiled in an inner class (i.e. if this is a real closure). |
| public void | parseContents(Parser parser)
Overrides com. Parse the attributes of the xsl:sort element |
| private void | |
| public void | translate(ClassGenerator classGen, MethodGenerator methodGen)
Overrides com. This method should not produce any code |
| public void | |
| public void | |
| public void | translateSelect(ClassGenerator classGen, MethodGenerator methodGen)
This method compiles code for the select expression for this xsl:sort element. |
| public static void | translateSortIterator(ClassGenerator classGen, MethodGenerator methodGen, Expression nodeSet, List<Sort> sortObjects)
Compiles code that instantiates a SortingIterator object. |
| public void | |
| public void | translateSortType(ClassGenerator classGen, MethodGenerator methodGen)
These two methods are needed in the static methods that compile the overloaded NodeSortRecord.compareType() and NodeSortRecord.sortOrder() |
| public Type | typeCheck(SymbolTable stable)
Overrides com. Run type checks on the attributes; expression must return a string which we will use as a sort key |
| _caseOrder | back to summary |
|---|---|
| private AttributeValue _caseOrder | |
| _className | back to summary |
|---|---|
| private String _className | |
| _closureVars | back to summary |
|---|---|
| private List<VariableRefBase> _closureVars | |
| _dataType | back to summary |
|---|---|
| private AttributeValue _dataType | |
| _lang | back to summary |
|---|---|
| private AttributeValue _lang | |
| _needsSortRecordFactory | back to summary |
|---|---|
| private boolean _needsSortRecordFactory | |
| _order | back to summary |
|---|---|
| private AttributeValue _order | |
| _select | back to summary |
|---|---|
| private Expression _select | |
| Sort | back to summary |
|---|---|
| pack-priv Sort() | |
| addVariable | back to summary |
|---|---|
| public void addVariable(VariableRefBase variableRef) Implements com. Add new variable to the closure. | |
| compileExtract | back to summary |
|---|---|
| private static MethodGenerator compileExtract(List<Sort> sortObjects, NodeSortRecordGenerator sortRecord, ConstantPoolGen cpg, String className) Compiles a method that overloads NodeSortRecord.extractValueFromDOM() | |
| compileInit | back to summary |
|---|---|
| private static MethodGenerator compileInit(NodeSortRecordGenerator sortRecord, ConstantPoolGen cpg, String className) Create a constructor for the new class. Updates the reference to the collator in the super calls only when the stylesheet specifies a new language in xsl:sort. | |
| compileSortRecord | back to summary |
|---|---|
| private static String compileSortRecord(List<Sort> sortObjects, ClassGenerator classGen, MethodGenerator methodGen) Create a new auxillary class extending NodeSortRecord. | |
| compileSortRecordFactory | back to summary |
|---|---|
| public static void compileSortRecordFactory(List<Sort> sortObjects, ClassGenerator classGen, MethodGenerator methodGen) Compiles code that instantiates a NodeSortRecordFactory object which will produce NodeSortRecord objects of a specific type. | |
| compileSortRecordFactory | back to summary |
|---|---|
| public static String compileSortRecordFactory(List<Sort> sortObjects, ClassGenerator classGen, MethodGenerator methodGen, String sortRecordClass) | |
| getInnerClassName | back to summary |
|---|---|
| public String getInnerClassName() Implements com. Returns the name of the auxiliary class or null if this predicate is compiled inside the Translet. | |
| getParentClosure | back to summary |
|---|---|
| public Closure getParentClosure() Implements com. Returns a reference to its parent closure or null if outermost. | |
| inInnerClass | back to summary |
|---|---|
| public boolean inInnerClass() Implements com. Returns true if this closure is compiled in an inner class (i.e. if this is a real closure). | |
| parseContents | back to summary |
|---|---|
| public void parseContents(Parser parser) Overrides com. Parse the attributes of the xsl:sort element | |
| setInnerClassName | back to summary |
|---|---|
| private void setInnerClassName(String className) | |
| translate | back to summary |
|---|---|
| public void translate(ClassGenerator classGen, MethodGenerator methodGen) Overrides com. This method should not produce any code | |
| translateCaseOrder | back to summary |
|---|---|
| public void translateCaseOrder(ClassGenerator classGen, MethodGenerator methodGen) | |
| translateLang | back to summary |
|---|---|
| public void translateLang(ClassGenerator classGen, MethodGenerator methodGen) | |
| translateSelect | back to summary |
|---|---|
| public void translateSelect(ClassGenerator classGen, MethodGenerator methodGen) This method compiles code for the select expression for this xsl:sort element. The method is called from the static code-generating methods in this class. | |
| translateSortIterator | back to summary |
|---|---|
| public static void translateSortIterator(ClassGenerator classGen, MethodGenerator methodGen, Expression nodeSet, List<Sort> sortObjects) Compiles code that instantiates a SortingIterator object. This object's constructor needs referencdes to the current iterator and a node sort record producing objects as its parameters. | |
| translateSortOrder | back to summary |
|---|---|
| public void translateSortOrder(ClassGenerator classGen, MethodGenerator methodGen) | |
| translateSortType | back to summary |
|---|---|
| public void translateSortType(ClassGenerator classGen, MethodGenerator methodGen) These two methods are needed in the static methods that compile the overloaded NodeSortRecord.compareType() and NodeSortRecord.sortOrder() | |
| typeCheck | back to summary |
|---|---|
| public Type typeCheck(SymbolTable stable) throws TypeCheckError Overrides com. Run type checks on the attributes; expression must return a string which we will use as a sort key | |