KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > net > sf > saxon > instruct > LocalVariable


1 package net.sf.saxon.instruct;
2 import net.sf.saxon.expr.ExpressionTool;
3 import net.sf.saxon.expr.XPathContext;
4 import net.sf.saxon.om.ValueRepresentation;
5 import net.sf.saxon.trans.XPathException;
6
7 /**
8 * Handler for local xsl:variable elements in stylesheet. Not used in XQuery. <br>
9 */

10
11 public class LocalVariable extends GeneralVariable {
12
13     /**
14     * Process the local variable declaration
15     */

16
17     public TailCall processLeavingTail(XPathContext context) throws XPathException {
18         context.setLocalVariable(getSlotNumber(),
19                 ExpressionTool.lazyEvaluate(getSelectExpression(), context, 10));
20         return null;
21     }
22
23    /**
24     * Evaluate the variable
25     */

26
27    public ValueRepresentation evaluateVariable(XPathContext c) throws XPathException {
28        return c.evaluateLocalVariable(getSlotNumber());
29    }
30 }
31
32 //
33
// The contents of this file are subject to the Mozilla Public License Version 1.0 (the "License");
34
// you may not use this file except in compliance with the License. You may obtain a copy of the
35
// License at http://www.mozilla.org/MPL/
36
//
37
// Software distributed under the License is distributed on an "AS IS" basis,
38
// WITHOUT WARRANTY OF ANY KIND, either express or implied.
39
// See the License for the specific language governing rights and limitations under the License.
40
//
41
// The Original Code is: all this file.
42
//
43
// The Initial Developer of the Original Code is Michael H. Kay.
44
//
45
// Portions created by (your name) are Copyright (C) (your legal entity). All Rights Reserved.
46
//
47
// Contributor(s): none.
48
//
49
Popular Tags