Examples of CaseVariable


Examples of xbird.xquery.expr.var.BindingVariable.CaseVariable

                jj_la1[88] = jj_gen;
                ;
        }
        currentToken = jj_consume_token(Return);
        expr = parseExprSingle();
        CaseVariable var = new CaseVariable(varName);
        CaseClause dc = new CaseClause(var, expr);
        switchExpr.setDefaultClause(dc);
        currentModule.popVarScope();
        {
            if(true)
View Full Code Here

Examples of xbird.xquery.expr.var.BindingVariable.CaseVariable

    /************************************************************************
    [44] CaseClause   ::= "case" ("$" VarName "as")? SequenceType "return" ExprSingle
    ************************************************************************/
    final public CaseClause parseCaseClause() throws ParseException, XQueryException {
        QualifiedName varName = null;
        CaseVariable caseVar = null;
        final Type varType;
        final XQExpression retExpr;
        currentModule.pushVarScope();
        currentToken = jj_consume_token(Case);
        switch(jj_nt.kind) {
            case VariableIndicator:
                // ("$" VarName "as")?
                currentToken = jj_consume_token(VariableIndicator);
                currentToken = jj_consume_token(VarName);
                varName = QNameUtil.parse(currentToken.image, namespaceContext, currentModule.getNamespace());
                caseVar = new CaseVariable(varName);
                currentModule.putVariable(varName, caseVar);
                currentToken = jj_consume_token(As);
                break;
            default:
                jj_la1[89] = jj_gen;
                ;
        }
        if(caseVar == null) {
            caseVar = new CaseVariable(null);
        }
        varType = parseSequenceType();
        caseVar.setType(varType);
        currentToken = jj_consume_token(Return);
        retExpr = parseExprSingle();
        currentModule.popVarScope();
        final CaseClause cc = new CaseClause(caseVar, retExpr);
        locate(cc);
View Full Code Here

Examples of xbird.xquery.expr.var.BindingVariable.CaseVariable

                } else {
                    retType = TypeUtil.union(retType, cc.getType());
                }
            }
            if(lastCC != null) {
                CaseVariable cv = lastCC.getVariable();
                cv.setValue(_operandExpr);
                XQExpression retExpr = lastCC.getReturnExpr();
                XQExpression analyzed = retExpr.staticAnalysis(statEnv);
                return analyzed;
            }
            assert (retType != null);
View Full Code Here

Examples of xbird.xquery.expr.var.BindingVariable.CaseVariable

    public Sequence<? extends Item> eval(Sequence<? extends Item> contextSeq, DynamicContext dynEnv)
            throws XQueryException {
        final Sequence<? extends Item> opr = _operandExpr.eval(contextSeq, dynEnv);
        for(CaseClause cc : _caseClauses) {
            final CaseVariable cv = cc.getVariable();
            final Type ccType = cv.getType();
            if(TypeUtil.instanceOf(opr, ccType)) {
                cv.allocateResult(opr, dynEnv);
                final XQExpression ccExpr = cc.getReturnExpr();
                return ccExpr.eval(contextSeq, dynEnv);
            }
        }
        throw new IllegalStateException("Typeswitch abnormally failed");
View Full Code Here

Examples of xbird.xquery.expr.var.BindingVariable.CaseVariable

    @Override
    public void evalAsEvents(XQEventReceiver handler, Sequence<? extends Item> contextSeq, DynamicContext dynEnv)
            throws XQueryException {
        final Sequence<? extends Item> opr = _operandExpr.eval(contextSeq, dynEnv);
        for(CaseClause cc : _caseClauses) {
            final CaseVariable cv = cc.getVariable();
            final Type ccType = cv.getType();
            if(TypeUtil.instanceOf(opr, ccType)) {
                cv.allocateResult(opr, dynEnv);
                final XQExpression ccExpr = cc.getReturnExpr();
                ccExpr.evalAsEvents(handler, contextSeq, dynEnv);
                return;
            }
        }
View Full Code Here

Examples of xbird.xquery.expr.var.BindingVariable.CaseVariable

                jj_la1[83] = jj_gen;
                ;
        }
        currentToken = jj_consume_token(Return);
        expr = parseExprSingle();
        CaseVariable var = new CaseVariable(varName);
        CaseClause dc = new CaseClause(var, expr);
        switchExpr.setDefaultClause(dc);
        currentModule.popVarScope();
        {
            if(true)
View Full Code Here

Examples of xbird.xquery.expr.var.BindingVariable.CaseVariable

    /************************************************************************
     [44] CaseClause   ::= "case" ("$" VarName "as")? SequenceType "return" ExprSingle
     ************************************************************************/
    final public CaseClause parseCaseClause() throws ParseException, XQueryException {
        QualifiedName varName = null;
        CaseVariable caseVar = null;
        final Type varType;
        final XQExpression retExpr;
        currentModule.pushVarScope();
        currentToken = jj_consume_token(Case);
        switch(jj_nt.kind) {
            case VariableIndicator:
                // ("$" VarName "as")?
                currentToken = jj_consume_token(VariableIndicator);
                currentToken = jj_consume_token(VarName);
                varName = QNameUtil.parse(currentToken.image, namespaceContext, currentModule.getNamespace());
                caseVar = new CaseVariable(varName);
                currentModule.putVariable(varName, caseVar);
                currentToken = jj_consume_token(As);
                break;
            default:
                jj_la1[84] = jj_gen;
                ;
        }
        if(caseVar == null) {
            caseVar = new CaseVariable(null);
        }
        varType = parseSequenceType();
        caseVar.setType(varType);
        currentToken = jj_consume_token(Return);
        retExpr = parseExprSingle();
        currentModule.popVarScope();
        final CaseClause cc = new CaseClause(caseVar, retExpr);
        locate(cc);
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.