Package org.apache.derby.iapi.services.compiler

Examples of org.apache.derby.iapi.services.compiler.MethodBuilder.pushThis()


     * generates:
     *    return TypeFactory.getSQLRef(this.ROWLOCATIONSCANRESULTSET.getRowLocation());
     * and adds it to exprFun
     */

    mb.pushThis();
    mb.getField((String)null, acb.getRowLocationScanResultSetName(), ClassName.CursorResultSet);
    mb.callMethod(VMOpcode.INVOKEINTERFACE, (String) null, "getRowLocation", ClassName.RowLocation, 0);


    acb.generateDataValue(mb, getTypeCompiler(),
View Full Code Here


    // declare field
    LocalField field = acb.newFieldDeclaration(Modifier.PRIVATE, type);

    /* Generate the call to the new method */
    mb.pushThis();
    mb.callMethod(VMOpcode.INVOKEVIRTUAL, (String) null, mbsq.getName(), type, 0);

    // generate: field = value (value is on stack)
    mb.setField(field);

View Full Code Here

    ** the resultSet variable is cached.
    **
    **   resultSet = (resultSet == null) ? ... : resultSet
    */

    executeMethod.pushThis();
    executeMethod.getField(ClassName.BaseActivation, "resultSet", ClassName.ResultSet);
    executeMethod.conditionalIfNull();

      /* We should generate the result set here.  However, the generated
       * code size may be too big to fit in a conditional statement for
View Full Code Here

     * generates:
     *    return TypeFactory.getSQLRef(this.ROWLOCATIONSCANRESULTSET.getRowLocation());
     * and adds it to exprFun
     */

    mb.pushThis();
    mb.getField((String)null, acb.getRowLocationScanResultSetName(), ClassName.CursorResultSet);
    mb.callMethod(VMOpcode.INVOKEINTERFACE, (String) null, "getRowLocation", ClassName.RowLocation, 0);


    acb.generateDataValue(mb, getTypeCompiler(), field);
View Full Code Here

    MethodBuilder mb = cb.newMethodBuilder(Modifier.PUBLIC,
      ClassName.ResultSet, "execute");
    mb.addThrownException(ClassName.StandardException);

    // put a 'throwIfClosed("execute");' statement into the execute method.
    mb.pushThis(); // instance
    mb.push("execute");
    mb.callMethod(VMOpcode.INVOKEVIRTUAL, ClassName.BaseActivation, "throwIfClosed", "void", 1);

    // call this.startExecution(), so the parent class can know an execution
    // has begun.
View Full Code Here

    mb.callMethod(VMOpcode.INVOKEVIRTUAL, ClassName.BaseActivation, "throwIfClosed", "void", 1);

    // call this.startExecution(), so the parent class can know an execution
    // has begun.

    mb.pushThis(); // instance
    mb.callMethod(VMOpcode.INVOKEVIRTUAL, ClassName.BaseActivation, "startExecution", "void", 0);

    return  mb;
  }
View Full Code Here

  public MethodBuilder startResetMethod() {
    MethodBuilder mb = cb.newMethodBuilder(Modifier.PUBLIC,
      "void", "reset");

    mb.addThrownException(ClassName.StandardException);
    mb.pushThis();
    mb.callMethod(VMOpcode.INVOKESPECIAL, ClassName.BaseActivation, "reset", "void", 0);


    return mb;
  }
View Full Code Here

               
        // get the RowLocation template
        exprFun.getField(lf); // instance for setColumn
        exprFun.push(highestColumnNumber + 1); // first arg

        exprFun.pushThis(); // instance for getRowLocationTemplate
        exprFun.push(savedItem); // first arg
        exprFun.callMethod(VMOpcode.INVOKEINTERFACE, ClassName.Activation, "getRowLocationTemplate",
                  ClassName.RowLocation, 1);

        exprFun.upCast(ClassName.DataValueDescriptor);
View Full Code Here

               
        // get the RowLocation template
        exprFun.getField(lf); // instance for setColumn
        exprFun.push(highestColumnNumber + 1); // first arg

        exprFun.pushThis(); // instance for getRowLocationTemplate
        exprFun.push(savedItem); // first arg
        exprFun.callMethod(VMOpcode.INVOKEINTERFACE, ClassName.Activation, "getRowLocationTemplate",
                  ClassName.RowLocation, 1);

        exprFun.upCast(ClassName.DataValueDescriptor);
View Full Code Here

    // declare field
    LocalField field = acb.newFieldDeclaration(Modifier.PRIVATE, type);

    /* Generate the call to the new method */
    mb.pushThis();
    mb.callMethod(VMOpcode.INVOKEVIRTUAL, (String) null, mbsq.getName(), type, 0);

    // generate: field = value (value is on stack)
    mb.setField(field);

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.