Java Code Examples for jdk.nashorn.internal.ir.BinaryNode#tokenType()

The following examples show how to use jdk.nashorn.internal.ir.BinaryNode#tokenType() . You can vote up the ones you like or vote down the ones you don't like, and go to the original project or source file by following the links above each example. You may check out the related API usage on the sidebar.
Example 1
Source File: CodeGenerator.java    From openjdk-8 with GNU General Public License v2.0 6 votes vote down vote up
private boolean enterAND_OR(final BinaryNode binaryNode) {
    final Expression lhs = binaryNode.lhs();
    final Expression rhs = binaryNode.rhs();

    final Label skip = new Label("skip");

    load(lhs, Type.OBJECT).dup().convert(Type.BOOLEAN);

    if (binaryNode.tokenType() == TokenType.AND) {
        method.ifeq(skip);
    } else {
        method.ifne(skip);
    }

    method.pop();
    load(rhs, Type.OBJECT);
    method.label(skip);
    method.store(binaryNode.getSymbol());

    return false;
}
 
Example 2
Source File: CodeGenerator.java    From openjdk-8-source with GNU General Public License v2.0 6 votes vote down vote up
private boolean enterAND_OR(final BinaryNode binaryNode) {
    final Expression lhs = binaryNode.lhs();
    final Expression rhs = binaryNode.rhs();

    final Label skip = new Label("skip");

    load(lhs, Type.OBJECT).dup().convert(Type.BOOLEAN);

    if (binaryNode.tokenType() == TokenType.AND) {
        method.ifeq(skip);
    } else {
        method.ifne(skip);
    }

    method.pop();
    load(rhs, Type.OBJECT);
    method.label(skip);
    method.store(binaryNode.getSymbol());

    return false;
}
 
Example 3
Source File: CodeGenerator.java    From nashorn with GNU General Public License v2.0 6 votes vote down vote up
private boolean enterAND_OR(final BinaryNode binaryNode) {
    final Expression lhs = binaryNode.lhs();
    final Expression rhs = binaryNode.rhs();

    final Label skip = new Label("skip");

    load(lhs).convert(Type.OBJECT).dup().convert(Type.BOOLEAN);

    if (binaryNode.tokenType() == TokenType.AND) {
        method.ifeq(skip);
    } else {
        method.ifne(skip);
    }

    method.pop();
    load(rhs).convert(Type.OBJECT);
    method.label(skip);
    method.store(binaryNode.getSymbol());

    return false;
}
 
Example 4
Source File: NodeOperatorVisitor.java    From nashorn with GNU General Public License v2.0 4 votes vote down vote up
@Override
public final boolean enterBinaryNode(final BinaryNode binaryNode) {
    switch (binaryNode.tokenType()) {
    case ADD:
        return enterADD(binaryNode);
    case AND:
        return enterAND(binaryNode);
    case ASSIGN:
        return enterASSIGN(binaryNode);
    case ASSIGN_ADD:
        return enterASSIGN_ADD(binaryNode);
    case ASSIGN_BIT_AND:
        return enterASSIGN_BIT_AND(binaryNode);
    case ASSIGN_BIT_OR:
        return enterASSIGN_BIT_OR(binaryNode);
    case ASSIGN_BIT_XOR:
        return enterASSIGN_BIT_XOR(binaryNode);
    case ASSIGN_DIV:
        return enterASSIGN_DIV(binaryNode);
    case ASSIGN_MOD:
        return enterASSIGN_MOD(binaryNode);
    case ASSIGN_MUL:
        return enterASSIGN_MUL(binaryNode);
    case ASSIGN_SAR:
        return enterASSIGN_SAR(binaryNode);
    case ASSIGN_SHL:
        return enterASSIGN_SHL(binaryNode);
    case ASSIGN_SHR:
        return enterASSIGN_SHR(binaryNode);
    case ASSIGN_SUB:
        return enterASSIGN_SUB(binaryNode);
    case BIND:
        return enterBIND(binaryNode);
    case BIT_AND:
        return enterBIT_AND(binaryNode);
    case BIT_OR:
        return enterBIT_OR(binaryNode);
    case BIT_XOR:
        return enterBIT_XOR(binaryNode);
    case COMMARIGHT:
        return enterCOMMARIGHT(binaryNode);
    case COMMALEFT:
        return enterCOMMALEFT(binaryNode);
    case DIV:
        return enterDIV(binaryNode);
    case EQ:
        return enterEQ(binaryNode);
    case EQ_STRICT:
        return enterEQ_STRICT(binaryNode);
    case GE:
        return enterGE(binaryNode);
    case GT:
        return enterGT(binaryNode);
    case IN:
        return enterIN(binaryNode);
    case INSTANCEOF:
        return enterINSTANCEOF(binaryNode);
    case LE:
        return enterLE(binaryNode);
    case LT:
        return enterLT(binaryNode);
    case MOD:
        return enterMOD(binaryNode);
    case MUL:
        return enterMUL(binaryNode);
    case NE:
        return enterNE(binaryNode);
    case NE_STRICT:
        return enterNE_STRICT(binaryNode);
    case OR:
        return enterOR(binaryNode);
    case SAR:
        return enterSAR(binaryNode);
    case SHL:
        return enterSHL(binaryNode);
    case SHR:
        return enterSHR(binaryNode);
    case SUB:
        return enterSUB(binaryNode);
    default:
        return super.enterBinaryNode(binaryNode);
    }
}
 
Example 5
Source File: NodeOperatorVisitor.java    From jdk8u_nashorn with GNU General Public License v2.0 4 votes vote down vote up
@Override
public final Node leaveBinaryNode(final BinaryNode binaryNode) {
    switch (binaryNode.tokenType()) {
    case ADD:
        return leaveADD(binaryNode);
    case AND:
        return leaveAND(binaryNode);
    case ASSIGN:
        return leaveASSIGN(binaryNode);
    case ASSIGN_ADD:
        return leaveASSIGN_ADD(binaryNode);
    case ASSIGN_BIT_AND:
        return leaveASSIGN_BIT_AND(binaryNode);
    case ASSIGN_BIT_OR:
        return leaveASSIGN_BIT_OR(binaryNode);
    case ASSIGN_BIT_XOR:
        return leaveASSIGN_BIT_XOR(binaryNode);
    case ASSIGN_DIV:
        return leaveASSIGN_DIV(binaryNode);
    case ASSIGN_MOD:
        return leaveASSIGN_MOD(binaryNode);
    case ASSIGN_MUL:
        return leaveASSIGN_MUL(binaryNode);
    case ASSIGN_SAR:
        return leaveASSIGN_SAR(binaryNode);
    case ASSIGN_SHL:
        return leaveASSIGN_SHL(binaryNode);
    case ASSIGN_SHR:
        return leaveASSIGN_SHR(binaryNode);
    case ASSIGN_SUB:
        return leaveASSIGN_SUB(binaryNode);
    case BIND:
        return leaveBIND(binaryNode);
    case BIT_AND:
        return leaveBIT_AND(binaryNode);
    case BIT_OR:
        return leaveBIT_OR(binaryNode);
    case BIT_XOR:
        return leaveBIT_XOR(binaryNode);
    case COMMARIGHT:
        return leaveCOMMARIGHT(binaryNode);
    case COMMALEFT:
        return leaveCOMMALEFT(binaryNode);
    case DIV:
        return leaveDIV(binaryNode);
    case EQ:
        return leaveEQ(binaryNode);
    case EQ_STRICT:
        return leaveEQ_STRICT(binaryNode);
    case GE:
        return leaveGE(binaryNode);
    case GT:
        return leaveGT(binaryNode);
    case IN:
        return leaveIN(binaryNode);
    case INSTANCEOF:
        return leaveINSTANCEOF(binaryNode);
    case LE:
        return leaveLE(binaryNode);
    case LT:
        return leaveLT(binaryNode);
    case MOD:
        return leaveMOD(binaryNode);
    case MUL:
        return leaveMUL(binaryNode);
    case NE:
        return leaveNE(binaryNode);
    case NE_STRICT:
        return leaveNE_STRICT(binaryNode);
    case OR:
        return leaveOR(binaryNode);
    case SAR:
        return leaveSAR(binaryNode);
    case SHL:
        return leaveSHL(binaryNode);
    case SHR:
        return leaveSHR(binaryNode);
    case SUB:
        return leaveSUB(binaryNode);
    default:
        return super.leaveBinaryNode(binaryNode);
    }
}
 
Example 6
Source File: NodeOperatorVisitor.java    From jdk8u_nashorn with GNU General Public License v2.0 4 votes vote down vote up
@Override
public final boolean enterBinaryNode(final BinaryNode binaryNode) {
    switch (binaryNode.tokenType()) {
    case ADD:
        return enterADD(binaryNode);
    case AND:
        return enterAND(binaryNode);
    case ASSIGN:
        return enterASSIGN(binaryNode);
    case ASSIGN_ADD:
        return enterASSIGN_ADD(binaryNode);
    case ASSIGN_BIT_AND:
        return enterASSIGN_BIT_AND(binaryNode);
    case ASSIGN_BIT_OR:
        return enterASSIGN_BIT_OR(binaryNode);
    case ASSIGN_BIT_XOR:
        return enterASSIGN_BIT_XOR(binaryNode);
    case ASSIGN_DIV:
        return enterASSIGN_DIV(binaryNode);
    case ASSIGN_MOD:
        return enterASSIGN_MOD(binaryNode);
    case ASSIGN_MUL:
        return enterASSIGN_MUL(binaryNode);
    case ASSIGN_SAR:
        return enterASSIGN_SAR(binaryNode);
    case ASSIGN_SHL:
        return enterASSIGN_SHL(binaryNode);
    case ASSIGN_SHR:
        return enterASSIGN_SHR(binaryNode);
    case ASSIGN_SUB:
        return enterASSIGN_SUB(binaryNode);
    case BIND:
        return enterBIND(binaryNode);
    case BIT_AND:
        return enterBIT_AND(binaryNode);
    case BIT_OR:
        return enterBIT_OR(binaryNode);
    case BIT_XOR:
        return enterBIT_XOR(binaryNode);
    case COMMARIGHT:
        return enterCOMMARIGHT(binaryNode);
    case COMMALEFT:
        return enterCOMMALEFT(binaryNode);
    case DIV:
        return enterDIV(binaryNode);
    case EQ:
        return enterEQ(binaryNode);
    case EQ_STRICT:
        return enterEQ_STRICT(binaryNode);
    case GE:
        return enterGE(binaryNode);
    case GT:
        return enterGT(binaryNode);
    case IN:
        return enterIN(binaryNode);
    case INSTANCEOF:
        return enterINSTANCEOF(binaryNode);
    case LE:
        return enterLE(binaryNode);
    case LT:
        return enterLT(binaryNode);
    case MOD:
        return enterMOD(binaryNode);
    case MUL:
        return enterMUL(binaryNode);
    case NE:
        return enterNE(binaryNode);
    case NE_STRICT:
        return enterNE_STRICT(binaryNode);
    case OR:
        return enterOR(binaryNode);
    case SAR:
        return enterSAR(binaryNode);
    case SHL:
        return enterSHL(binaryNode);
    case SHR:
        return enterSHR(binaryNode);
    case SUB:
        return enterSUB(binaryNode);
    default:
        return super.enterBinaryNode(binaryNode);
    }
}
 
Example 7
Source File: NodeOperatorVisitor.java    From openjdk-8 with GNU General Public License v2.0 4 votes vote down vote up
@Override
public final Node leaveBinaryNode(final BinaryNode binaryNode) {
    switch (binaryNode.tokenType()) {
    case ADD:
        return leaveADD(binaryNode);
    case AND:
        return leaveAND(binaryNode);
    case ASSIGN:
        return leaveASSIGN(binaryNode);
    case ASSIGN_ADD:
        return leaveASSIGN_ADD(binaryNode);
    case ASSIGN_BIT_AND:
        return leaveASSIGN_BIT_AND(binaryNode);
    case ASSIGN_BIT_OR:
        return leaveASSIGN_BIT_OR(binaryNode);
    case ASSIGN_BIT_XOR:
        return leaveASSIGN_BIT_XOR(binaryNode);
    case ASSIGN_DIV:
        return leaveASSIGN_DIV(binaryNode);
    case ASSIGN_MOD:
        return leaveASSIGN_MOD(binaryNode);
    case ASSIGN_MUL:
        return leaveASSIGN_MUL(binaryNode);
    case ASSIGN_SAR:
        return leaveASSIGN_SAR(binaryNode);
    case ASSIGN_SHL:
        return leaveASSIGN_SHL(binaryNode);
    case ASSIGN_SHR:
        return leaveASSIGN_SHR(binaryNode);
    case ASSIGN_SUB:
        return leaveASSIGN_SUB(binaryNode);
    case BIND:
        return leaveBIND(binaryNode);
    case BIT_AND:
        return leaveBIT_AND(binaryNode);
    case BIT_OR:
        return leaveBIT_OR(binaryNode);
    case BIT_XOR:
        return leaveBIT_XOR(binaryNode);
    case COMMARIGHT:
        return leaveCOMMARIGHT(binaryNode);
    case COMMALEFT:
        return leaveCOMMALEFT(binaryNode);
    case DIV:
        return leaveDIV(binaryNode);
    case EQ:
        return leaveEQ(binaryNode);
    case EQ_STRICT:
        return leaveEQ_STRICT(binaryNode);
    case GE:
        return leaveGE(binaryNode);
    case GT:
        return leaveGT(binaryNode);
    case IN:
        return leaveIN(binaryNode);
    case INSTANCEOF:
        return leaveINSTANCEOF(binaryNode);
    case LE:
        return leaveLE(binaryNode);
    case LT:
        return leaveLT(binaryNode);
    case MOD:
        return leaveMOD(binaryNode);
    case MUL:
        return leaveMUL(binaryNode);
    case NE:
        return leaveNE(binaryNode);
    case NE_STRICT:
        return leaveNE_STRICT(binaryNode);
    case OR:
        return leaveOR(binaryNode);
    case SAR:
        return leaveSAR(binaryNode);
    case SHL:
        return leaveSHL(binaryNode);
    case SHR:
        return leaveSHR(binaryNode);
    case SUB:
        return leaveSUB(binaryNode);
    default:
        return super.leaveBinaryNode(binaryNode);
    }
}
 
Example 8
Source File: NodeOperatorVisitor.java    From openjdk-8 with GNU General Public License v2.0 4 votes vote down vote up
@Override
public final boolean enterBinaryNode(final BinaryNode binaryNode) {
    switch (binaryNode.tokenType()) {
    case ADD:
        return enterADD(binaryNode);
    case AND:
        return enterAND(binaryNode);
    case ASSIGN:
        return enterASSIGN(binaryNode);
    case ASSIGN_ADD:
        return enterASSIGN_ADD(binaryNode);
    case ASSIGN_BIT_AND:
        return enterASSIGN_BIT_AND(binaryNode);
    case ASSIGN_BIT_OR:
        return enterASSIGN_BIT_OR(binaryNode);
    case ASSIGN_BIT_XOR:
        return enterASSIGN_BIT_XOR(binaryNode);
    case ASSIGN_DIV:
        return enterASSIGN_DIV(binaryNode);
    case ASSIGN_MOD:
        return enterASSIGN_MOD(binaryNode);
    case ASSIGN_MUL:
        return enterASSIGN_MUL(binaryNode);
    case ASSIGN_SAR:
        return enterASSIGN_SAR(binaryNode);
    case ASSIGN_SHL:
        return enterASSIGN_SHL(binaryNode);
    case ASSIGN_SHR:
        return enterASSIGN_SHR(binaryNode);
    case ASSIGN_SUB:
        return enterASSIGN_SUB(binaryNode);
    case BIND:
        return enterBIND(binaryNode);
    case BIT_AND:
        return enterBIT_AND(binaryNode);
    case BIT_OR:
        return enterBIT_OR(binaryNode);
    case BIT_XOR:
        return enterBIT_XOR(binaryNode);
    case COMMARIGHT:
        return enterCOMMARIGHT(binaryNode);
    case COMMALEFT:
        return enterCOMMALEFT(binaryNode);
    case DIV:
        return enterDIV(binaryNode);
    case EQ:
        return enterEQ(binaryNode);
    case EQ_STRICT:
        return enterEQ_STRICT(binaryNode);
    case GE:
        return enterGE(binaryNode);
    case GT:
        return enterGT(binaryNode);
    case IN:
        return enterIN(binaryNode);
    case INSTANCEOF:
        return enterINSTANCEOF(binaryNode);
    case LE:
        return enterLE(binaryNode);
    case LT:
        return enterLT(binaryNode);
    case MOD:
        return enterMOD(binaryNode);
    case MUL:
        return enterMUL(binaryNode);
    case NE:
        return enterNE(binaryNode);
    case NE_STRICT:
        return enterNE_STRICT(binaryNode);
    case OR:
        return enterOR(binaryNode);
    case SAR:
        return enterSAR(binaryNode);
    case SHL:
        return enterSHL(binaryNode);
    case SHR:
        return enterSHR(binaryNode);
    case SUB:
        return enterSUB(binaryNode);
    default:
        return super.enterBinaryNode(binaryNode);
    }
}
 
Example 9
Source File: NodeOperatorVisitor.java    From openjdk-8-source with GNU General Public License v2.0 4 votes vote down vote up
@Override
public final boolean enterBinaryNode(final BinaryNode binaryNode) {
    switch (binaryNode.tokenType()) {
    case ADD:
        return enterADD(binaryNode);
    case AND:
        return enterAND(binaryNode);
    case ASSIGN:
        return enterASSIGN(binaryNode);
    case ASSIGN_ADD:
        return enterASSIGN_ADD(binaryNode);
    case ASSIGN_BIT_AND:
        return enterASSIGN_BIT_AND(binaryNode);
    case ASSIGN_BIT_OR:
        return enterASSIGN_BIT_OR(binaryNode);
    case ASSIGN_BIT_XOR:
        return enterASSIGN_BIT_XOR(binaryNode);
    case ASSIGN_DIV:
        return enterASSIGN_DIV(binaryNode);
    case ASSIGN_MOD:
        return enterASSIGN_MOD(binaryNode);
    case ASSIGN_MUL:
        return enterASSIGN_MUL(binaryNode);
    case ASSIGN_SAR:
        return enterASSIGN_SAR(binaryNode);
    case ASSIGN_SHL:
        return enterASSIGN_SHL(binaryNode);
    case ASSIGN_SHR:
        return enterASSIGN_SHR(binaryNode);
    case ASSIGN_SUB:
        return enterASSIGN_SUB(binaryNode);
    case BIND:
        return enterBIND(binaryNode);
    case BIT_AND:
        return enterBIT_AND(binaryNode);
    case BIT_OR:
        return enterBIT_OR(binaryNode);
    case BIT_XOR:
        return enterBIT_XOR(binaryNode);
    case COMMARIGHT:
        return enterCOMMARIGHT(binaryNode);
    case COMMALEFT:
        return enterCOMMALEFT(binaryNode);
    case DIV:
        return enterDIV(binaryNode);
    case EQ:
        return enterEQ(binaryNode);
    case EQ_STRICT:
        return enterEQ_STRICT(binaryNode);
    case GE:
        return enterGE(binaryNode);
    case GT:
        return enterGT(binaryNode);
    case IN:
        return enterIN(binaryNode);
    case INSTANCEOF:
        return enterINSTANCEOF(binaryNode);
    case LE:
        return enterLE(binaryNode);
    case LT:
        return enterLT(binaryNode);
    case MOD:
        return enterMOD(binaryNode);
    case MUL:
        return enterMUL(binaryNode);
    case NE:
        return enterNE(binaryNode);
    case NE_STRICT:
        return enterNE_STRICT(binaryNode);
    case OR:
        return enterOR(binaryNode);
    case SAR:
        return enterSAR(binaryNode);
    case SHL:
        return enterSHL(binaryNode);
    case SHR:
        return enterSHR(binaryNode);
    case SUB:
        return enterSUB(binaryNode);
    default:
        return super.enterBinaryNode(binaryNode);
    }
}
 
Example 10
Source File: NodeOperatorVisitor.java    From nashorn with GNU General Public License v2.0 4 votes vote down vote up
@Override
public final Node leaveBinaryNode(final BinaryNode binaryNode) {
    switch (binaryNode.tokenType()) {
    case ADD:
        return leaveADD(binaryNode);
    case AND:
        return leaveAND(binaryNode);
    case ASSIGN:
        return leaveASSIGN(binaryNode);
    case ASSIGN_ADD:
        return leaveASSIGN_ADD(binaryNode);
    case ASSIGN_BIT_AND:
        return leaveASSIGN_BIT_AND(binaryNode);
    case ASSIGN_BIT_OR:
        return leaveASSIGN_BIT_OR(binaryNode);
    case ASSIGN_BIT_XOR:
        return leaveASSIGN_BIT_XOR(binaryNode);
    case ASSIGN_DIV:
        return leaveASSIGN_DIV(binaryNode);
    case ASSIGN_MOD:
        return leaveASSIGN_MOD(binaryNode);
    case ASSIGN_MUL:
        return leaveASSIGN_MUL(binaryNode);
    case ASSIGN_SAR:
        return leaveASSIGN_SAR(binaryNode);
    case ASSIGN_SHL:
        return leaveASSIGN_SHL(binaryNode);
    case ASSIGN_SHR:
        return leaveASSIGN_SHR(binaryNode);
    case ASSIGN_SUB:
        return leaveASSIGN_SUB(binaryNode);
    case BIND:
        return leaveBIND(binaryNode);
    case BIT_AND:
        return leaveBIT_AND(binaryNode);
    case BIT_OR:
        return leaveBIT_OR(binaryNode);
    case BIT_XOR:
        return leaveBIT_XOR(binaryNode);
    case COMMARIGHT:
        return leaveCOMMARIGHT(binaryNode);
    case COMMALEFT:
        return leaveCOMMALEFT(binaryNode);
    case DIV:
        return leaveDIV(binaryNode);
    case EQ:
        return leaveEQ(binaryNode);
    case EQ_STRICT:
        return leaveEQ_STRICT(binaryNode);
    case GE:
        return leaveGE(binaryNode);
    case GT:
        return leaveGT(binaryNode);
    case IN:
        return leaveIN(binaryNode);
    case INSTANCEOF:
        return leaveINSTANCEOF(binaryNode);
    case LE:
        return leaveLE(binaryNode);
    case LT:
        return leaveLT(binaryNode);
    case MOD:
        return leaveMOD(binaryNode);
    case MUL:
        return leaveMUL(binaryNode);
    case NE:
        return leaveNE(binaryNode);
    case NE_STRICT:
        return leaveNE_STRICT(binaryNode);
    case OR:
        return leaveOR(binaryNode);
    case SAR:
        return leaveSAR(binaryNode);
    case SHL:
        return leaveSHL(binaryNode);
    case SHR:
        return leaveSHR(binaryNode);
    case SUB:
        return leaveSUB(binaryNode);
    default:
        return super.leaveBinaryNode(binaryNode);
    }
}
 
Example 11
Source File: NodeOperatorVisitor.java    From TencentKona-8 with GNU General Public License v2.0 4 votes vote down vote up
@Override
public final boolean enterBinaryNode(final BinaryNode binaryNode) {
    switch (binaryNode.tokenType()) {
    case ADD:
        return enterADD(binaryNode);
    case AND:
        return enterAND(binaryNode);
    case ASSIGN:
        return enterASSIGN(binaryNode);
    case ASSIGN_ADD:
        return enterASSIGN_ADD(binaryNode);
    case ASSIGN_BIT_AND:
        return enterASSIGN_BIT_AND(binaryNode);
    case ASSIGN_BIT_OR:
        return enterASSIGN_BIT_OR(binaryNode);
    case ASSIGN_BIT_XOR:
        return enterASSIGN_BIT_XOR(binaryNode);
    case ASSIGN_DIV:
        return enterASSIGN_DIV(binaryNode);
    case ASSIGN_MOD:
        return enterASSIGN_MOD(binaryNode);
    case ASSIGN_MUL:
        return enterASSIGN_MUL(binaryNode);
    case ASSIGN_SAR:
        return enterASSIGN_SAR(binaryNode);
    case ASSIGN_SHL:
        return enterASSIGN_SHL(binaryNode);
    case ASSIGN_SHR:
        return enterASSIGN_SHR(binaryNode);
    case ASSIGN_SUB:
        return enterASSIGN_SUB(binaryNode);
    case BIND:
        return enterBIND(binaryNode);
    case BIT_AND:
        return enterBIT_AND(binaryNode);
    case BIT_OR:
        return enterBIT_OR(binaryNode);
    case BIT_XOR:
        return enterBIT_XOR(binaryNode);
    case COMMARIGHT:
        return enterCOMMARIGHT(binaryNode);
    case COMMALEFT:
        return enterCOMMALEFT(binaryNode);
    case DIV:
        return enterDIV(binaryNode);
    case EQ:
        return enterEQ(binaryNode);
    case EQ_STRICT:
        return enterEQ_STRICT(binaryNode);
    case GE:
        return enterGE(binaryNode);
    case GT:
        return enterGT(binaryNode);
    case IN:
        return enterIN(binaryNode);
    case INSTANCEOF:
        return enterINSTANCEOF(binaryNode);
    case LE:
        return enterLE(binaryNode);
    case LT:
        return enterLT(binaryNode);
    case MOD:
        return enterMOD(binaryNode);
    case MUL:
        return enterMUL(binaryNode);
    case NE:
        return enterNE(binaryNode);
    case NE_STRICT:
        return enterNE_STRICT(binaryNode);
    case OR:
        return enterOR(binaryNode);
    case SAR:
        return enterSAR(binaryNode);
    case SHL:
        return enterSHL(binaryNode);
    case SHR:
        return enterSHR(binaryNode);
    case SUB:
        return enterSUB(binaryNode);
    default:
        return super.enterBinaryNode(binaryNode);
    }
}
 
Example 12
Source File: NodeOperatorVisitor.java    From openjdk-jdk9 with GNU General Public License v2.0 4 votes vote down vote up
@Override
public final Node leaveBinaryNode(final BinaryNode binaryNode) {
    switch (binaryNode.tokenType()) {
    case ADD:
        return leaveADD(binaryNode);
    case AND:
        return leaveAND(binaryNode);
    case ASSIGN:
        return leaveASSIGN(binaryNode);
    case ASSIGN_ADD:
        return leaveASSIGN_ADD(binaryNode);
    case ASSIGN_BIT_AND:
        return leaveASSIGN_BIT_AND(binaryNode);
    case ASSIGN_BIT_OR:
        return leaveASSIGN_BIT_OR(binaryNode);
    case ASSIGN_BIT_XOR:
        return leaveASSIGN_BIT_XOR(binaryNode);
    case ASSIGN_DIV:
        return leaveASSIGN_DIV(binaryNode);
    case ASSIGN_MOD:
        return leaveASSIGN_MOD(binaryNode);
    case ASSIGN_MUL:
        return leaveASSIGN_MUL(binaryNode);
    case ASSIGN_SAR:
        return leaveASSIGN_SAR(binaryNode);
    case ASSIGN_SHL:
        return leaveASSIGN_SHL(binaryNode);
    case ASSIGN_SHR:
        return leaveASSIGN_SHR(binaryNode);
    case ASSIGN_SUB:
        return leaveASSIGN_SUB(binaryNode);
    case ARROW:
        return leaveARROW(binaryNode);
    case BIT_AND:
        return leaveBIT_AND(binaryNode);
    case BIT_OR:
        return leaveBIT_OR(binaryNode);
    case BIT_XOR:
        return leaveBIT_XOR(binaryNode);
    case COMMARIGHT:
        return leaveCOMMARIGHT(binaryNode);
    case COMMALEFT:
        return leaveCOMMALEFT(binaryNode);
    case DIV:
        return leaveDIV(binaryNode);
    case EQ:
        return leaveEQ(binaryNode);
    case EQ_STRICT:
        return leaveEQ_STRICT(binaryNode);
    case GE:
        return leaveGE(binaryNode);
    case GT:
        return leaveGT(binaryNode);
    case IN:
        return leaveIN(binaryNode);
    case INSTANCEOF:
        return leaveINSTANCEOF(binaryNode);
    case LE:
        return leaveLE(binaryNode);
    case LT:
        return leaveLT(binaryNode);
    case MOD:
        return leaveMOD(binaryNode);
    case MUL:
        return leaveMUL(binaryNode);
    case NE:
        return leaveNE(binaryNode);
    case NE_STRICT:
        return leaveNE_STRICT(binaryNode);
    case OR:
        return leaveOR(binaryNode);
    case SAR:
        return leaveSAR(binaryNode);
    case SHL:
        return leaveSHL(binaryNode);
    case SHR:
        return leaveSHR(binaryNode);
    case SUB:
        return leaveSUB(binaryNode);
    default:
        return super.leaveBinaryNode(binaryNode);
    }
}
 
Example 13
Source File: NodeOperatorVisitor.java    From openjdk-jdk9 with GNU General Public License v2.0 4 votes vote down vote up
@Override
public final boolean enterBinaryNode(final BinaryNode binaryNode) {
    switch (binaryNode.tokenType()) {
    case ADD:
        return enterADD(binaryNode);
    case AND:
        return enterAND(binaryNode);
    case ASSIGN:
        return enterASSIGN(binaryNode);
    case ASSIGN_ADD:
        return enterASSIGN_ADD(binaryNode);
    case ASSIGN_BIT_AND:
        return enterASSIGN_BIT_AND(binaryNode);
    case ASSIGN_BIT_OR:
        return enterASSIGN_BIT_OR(binaryNode);
    case ASSIGN_BIT_XOR:
        return enterASSIGN_BIT_XOR(binaryNode);
    case ASSIGN_DIV:
        return enterASSIGN_DIV(binaryNode);
    case ASSIGN_MOD:
        return enterASSIGN_MOD(binaryNode);
    case ASSIGN_MUL:
        return enterASSIGN_MUL(binaryNode);
    case ASSIGN_SAR:
        return enterASSIGN_SAR(binaryNode);
    case ASSIGN_SHL:
        return enterASSIGN_SHL(binaryNode);
    case ASSIGN_SHR:
        return enterASSIGN_SHR(binaryNode);
    case ASSIGN_SUB:
        return enterASSIGN_SUB(binaryNode);
    case ARROW:
        return enterARROW(binaryNode);
    case BIT_AND:
        return enterBIT_AND(binaryNode);
    case BIT_OR:
        return enterBIT_OR(binaryNode);
    case BIT_XOR:
        return enterBIT_XOR(binaryNode);
    case COMMARIGHT:
        return enterCOMMARIGHT(binaryNode);
    case COMMALEFT:
        return enterCOMMALEFT(binaryNode);
    case DIV:
        return enterDIV(binaryNode);
    case EQ:
        return enterEQ(binaryNode);
    case EQ_STRICT:
        return enterEQ_STRICT(binaryNode);
    case GE:
        return enterGE(binaryNode);
    case GT:
        return enterGT(binaryNode);
    case IN:
        return enterIN(binaryNode);
    case INSTANCEOF:
        return enterINSTANCEOF(binaryNode);
    case LE:
        return enterLE(binaryNode);
    case LT:
        return enterLT(binaryNode);
    case MOD:
        return enterMOD(binaryNode);
    case MUL:
        return enterMUL(binaryNode);
    case NE:
        return enterNE(binaryNode);
    case NE_STRICT:
        return enterNE_STRICT(binaryNode);
    case OR:
        return enterOR(binaryNode);
    case SAR:
        return enterSAR(binaryNode);
    case SHL:
        return enterSHL(binaryNode);
    case SHR:
        return enterSHR(binaryNode);
    case SUB:
        return enterSUB(binaryNode);
    default:
        return super.enterBinaryNode(binaryNode);
    }
}
 
Example 14
Source File: NodeOperatorVisitor.java    From openjdk-jdk8u-backup with GNU General Public License v2.0 4 votes vote down vote up
@Override
public final Node leaveBinaryNode(final BinaryNode binaryNode) {
    switch (binaryNode.tokenType()) {
    case ADD:
        return leaveADD(binaryNode);
    case AND:
        return leaveAND(binaryNode);
    case ASSIGN:
        return leaveASSIGN(binaryNode);
    case ASSIGN_ADD:
        return leaveASSIGN_ADD(binaryNode);
    case ASSIGN_BIT_AND:
        return leaveASSIGN_BIT_AND(binaryNode);
    case ASSIGN_BIT_OR:
        return leaveASSIGN_BIT_OR(binaryNode);
    case ASSIGN_BIT_XOR:
        return leaveASSIGN_BIT_XOR(binaryNode);
    case ASSIGN_DIV:
        return leaveASSIGN_DIV(binaryNode);
    case ASSIGN_MOD:
        return leaveASSIGN_MOD(binaryNode);
    case ASSIGN_MUL:
        return leaveASSIGN_MUL(binaryNode);
    case ASSIGN_SAR:
        return leaveASSIGN_SAR(binaryNode);
    case ASSIGN_SHL:
        return leaveASSIGN_SHL(binaryNode);
    case ASSIGN_SHR:
        return leaveASSIGN_SHR(binaryNode);
    case ASSIGN_SUB:
        return leaveASSIGN_SUB(binaryNode);
    case BIND:
        return leaveBIND(binaryNode);
    case BIT_AND:
        return leaveBIT_AND(binaryNode);
    case BIT_OR:
        return leaveBIT_OR(binaryNode);
    case BIT_XOR:
        return leaveBIT_XOR(binaryNode);
    case COMMARIGHT:
        return leaveCOMMARIGHT(binaryNode);
    case COMMALEFT:
        return leaveCOMMALEFT(binaryNode);
    case DIV:
        return leaveDIV(binaryNode);
    case EQ:
        return leaveEQ(binaryNode);
    case EQ_STRICT:
        return leaveEQ_STRICT(binaryNode);
    case GE:
        return leaveGE(binaryNode);
    case GT:
        return leaveGT(binaryNode);
    case IN:
        return leaveIN(binaryNode);
    case INSTANCEOF:
        return leaveINSTANCEOF(binaryNode);
    case LE:
        return leaveLE(binaryNode);
    case LT:
        return leaveLT(binaryNode);
    case MOD:
        return leaveMOD(binaryNode);
    case MUL:
        return leaveMUL(binaryNode);
    case NE:
        return leaveNE(binaryNode);
    case NE_STRICT:
        return leaveNE_STRICT(binaryNode);
    case OR:
        return leaveOR(binaryNode);
    case SAR:
        return leaveSAR(binaryNode);
    case SHL:
        return leaveSHL(binaryNode);
    case SHR:
        return leaveSHR(binaryNode);
    case SUB:
        return leaveSUB(binaryNode);
    default:
        return super.leaveBinaryNode(binaryNode);
    }
}
 
Example 15
Source File: NodeOperatorVisitor.java    From openjdk-jdk8u-backup with GNU General Public License v2.0 4 votes vote down vote up
@Override
public final boolean enterBinaryNode(final BinaryNode binaryNode) {
    switch (binaryNode.tokenType()) {
    case ADD:
        return enterADD(binaryNode);
    case AND:
        return enterAND(binaryNode);
    case ASSIGN:
        return enterASSIGN(binaryNode);
    case ASSIGN_ADD:
        return enterASSIGN_ADD(binaryNode);
    case ASSIGN_BIT_AND:
        return enterASSIGN_BIT_AND(binaryNode);
    case ASSIGN_BIT_OR:
        return enterASSIGN_BIT_OR(binaryNode);
    case ASSIGN_BIT_XOR:
        return enterASSIGN_BIT_XOR(binaryNode);
    case ASSIGN_DIV:
        return enterASSIGN_DIV(binaryNode);
    case ASSIGN_MOD:
        return enterASSIGN_MOD(binaryNode);
    case ASSIGN_MUL:
        return enterASSIGN_MUL(binaryNode);
    case ASSIGN_SAR:
        return enterASSIGN_SAR(binaryNode);
    case ASSIGN_SHL:
        return enterASSIGN_SHL(binaryNode);
    case ASSIGN_SHR:
        return enterASSIGN_SHR(binaryNode);
    case ASSIGN_SUB:
        return enterASSIGN_SUB(binaryNode);
    case BIND:
        return enterBIND(binaryNode);
    case BIT_AND:
        return enterBIT_AND(binaryNode);
    case BIT_OR:
        return enterBIT_OR(binaryNode);
    case BIT_XOR:
        return enterBIT_XOR(binaryNode);
    case COMMARIGHT:
        return enterCOMMARIGHT(binaryNode);
    case COMMALEFT:
        return enterCOMMALEFT(binaryNode);
    case DIV:
        return enterDIV(binaryNode);
    case EQ:
        return enterEQ(binaryNode);
    case EQ_STRICT:
        return enterEQ_STRICT(binaryNode);
    case GE:
        return enterGE(binaryNode);
    case GT:
        return enterGT(binaryNode);
    case IN:
        return enterIN(binaryNode);
    case INSTANCEOF:
        return enterINSTANCEOF(binaryNode);
    case LE:
        return enterLE(binaryNode);
    case LT:
        return enterLT(binaryNode);
    case MOD:
        return enterMOD(binaryNode);
    case MUL:
        return enterMUL(binaryNode);
    case NE:
        return enterNE(binaryNode);
    case NE_STRICT:
        return enterNE_STRICT(binaryNode);
    case OR:
        return enterOR(binaryNode);
    case SAR:
        return enterSAR(binaryNode);
    case SHL:
        return enterSHL(binaryNode);
    case SHR:
        return enterSHR(binaryNode);
    case SUB:
        return enterSUB(binaryNode);
    default:
        return super.enterBinaryNode(binaryNode);
    }
}
 
Example 16
Source File: NodeOperatorVisitor.java    From openjdk-jdk8u with GNU General Public License v2.0 4 votes vote down vote up
@Override
public final Node leaveBinaryNode(final BinaryNode binaryNode) {
    switch (binaryNode.tokenType()) {
    case ADD:
        return leaveADD(binaryNode);
    case AND:
        return leaveAND(binaryNode);
    case ASSIGN:
        return leaveASSIGN(binaryNode);
    case ASSIGN_ADD:
        return leaveASSIGN_ADD(binaryNode);
    case ASSIGN_BIT_AND:
        return leaveASSIGN_BIT_AND(binaryNode);
    case ASSIGN_BIT_OR:
        return leaveASSIGN_BIT_OR(binaryNode);
    case ASSIGN_BIT_XOR:
        return leaveASSIGN_BIT_XOR(binaryNode);
    case ASSIGN_DIV:
        return leaveASSIGN_DIV(binaryNode);
    case ASSIGN_MOD:
        return leaveASSIGN_MOD(binaryNode);
    case ASSIGN_MUL:
        return leaveASSIGN_MUL(binaryNode);
    case ASSIGN_SAR:
        return leaveASSIGN_SAR(binaryNode);
    case ASSIGN_SHL:
        return leaveASSIGN_SHL(binaryNode);
    case ASSIGN_SHR:
        return leaveASSIGN_SHR(binaryNode);
    case ASSIGN_SUB:
        return leaveASSIGN_SUB(binaryNode);
    case BIND:
        return leaveBIND(binaryNode);
    case BIT_AND:
        return leaveBIT_AND(binaryNode);
    case BIT_OR:
        return leaveBIT_OR(binaryNode);
    case BIT_XOR:
        return leaveBIT_XOR(binaryNode);
    case COMMARIGHT:
        return leaveCOMMARIGHT(binaryNode);
    case COMMALEFT:
        return leaveCOMMALEFT(binaryNode);
    case DIV:
        return leaveDIV(binaryNode);
    case EQ:
        return leaveEQ(binaryNode);
    case EQ_STRICT:
        return leaveEQ_STRICT(binaryNode);
    case GE:
        return leaveGE(binaryNode);
    case GT:
        return leaveGT(binaryNode);
    case IN:
        return leaveIN(binaryNode);
    case INSTANCEOF:
        return leaveINSTANCEOF(binaryNode);
    case LE:
        return leaveLE(binaryNode);
    case LT:
        return leaveLT(binaryNode);
    case MOD:
        return leaveMOD(binaryNode);
    case MUL:
        return leaveMUL(binaryNode);
    case NE:
        return leaveNE(binaryNode);
    case NE_STRICT:
        return leaveNE_STRICT(binaryNode);
    case OR:
        return leaveOR(binaryNode);
    case SAR:
        return leaveSAR(binaryNode);
    case SHL:
        return leaveSHL(binaryNode);
    case SHR:
        return leaveSHR(binaryNode);
    case SUB:
        return leaveSUB(binaryNode);
    default:
        return super.leaveBinaryNode(binaryNode);
    }
}
 
Example 17
Source File: NodeOperatorVisitor.java    From openjdk-jdk8u with GNU General Public License v2.0 4 votes vote down vote up
@Override
public final boolean enterBinaryNode(final BinaryNode binaryNode) {
    switch (binaryNode.tokenType()) {
    case ADD:
        return enterADD(binaryNode);
    case AND:
        return enterAND(binaryNode);
    case ASSIGN:
        return enterASSIGN(binaryNode);
    case ASSIGN_ADD:
        return enterASSIGN_ADD(binaryNode);
    case ASSIGN_BIT_AND:
        return enterASSIGN_BIT_AND(binaryNode);
    case ASSIGN_BIT_OR:
        return enterASSIGN_BIT_OR(binaryNode);
    case ASSIGN_BIT_XOR:
        return enterASSIGN_BIT_XOR(binaryNode);
    case ASSIGN_DIV:
        return enterASSIGN_DIV(binaryNode);
    case ASSIGN_MOD:
        return enterASSIGN_MOD(binaryNode);
    case ASSIGN_MUL:
        return enterASSIGN_MUL(binaryNode);
    case ASSIGN_SAR:
        return enterASSIGN_SAR(binaryNode);
    case ASSIGN_SHL:
        return enterASSIGN_SHL(binaryNode);
    case ASSIGN_SHR:
        return enterASSIGN_SHR(binaryNode);
    case ASSIGN_SUB:
        return enterASSIGN_SUB(binaryNode);
    case BIND:
        return enterBIND(binaryNode);
    case BIT_AND:
        return enterBIT_AND(binaryNode);
    case BIT_OR:
        return enterBIT_OR(binaryNode);
    case BIT_XOR:
        return enterBIT_XOR(binaryNode);
    case COMMARIGHT:
        return enterCOMMARIGHT(binaryNode);
    case COMMALEFT:
        return enterCOMMALEFT(binaryNode);
    case DIV:
        return enterDIV(binaryNode);
    case EQ:
        return enterEQ(binaryNode);
    case EQ_STRICT:
        return enterEQ_STRICT(binaryNode);
    case GE:
        return enterGE(binaryNode);
    case GT:
        return enterGT(binaryNode);
    case IN:
        return enterIN(binaryNode);
    case INSTANCEOF:
        return enterINSTANCEOF(binaryNode);
    case LE:
        return enterLE(binaryNode);
    case LT:
        return enterLT(binaryNode);
    case MOD:
        return enterMOD(binaryNode);
    case MUL:
        return enterMUL(binaryNode);
    case NE:
        return enterNE(binaryNode);
    case NE_STRICT:
        return enterNE_STRICT(binaryNode);
    case OR:
        return enterOR(binaryNode);
    case SAR:
        return enterSAR(binaryNode);
    case SHL:
        return enterSHL(binaryNode);
    case SHR:
        return enterSHR(binaryNode);
    case SUB:
        return enterSUB(binaryNode);
    default:
        return super.enterBinaryNode(binaryNode);
    }
}
 
Example 18
Source File: NodeOperatorVisitor.java    From jdk8u60 with GNU General Public License v2.0 4 votes vote down vote up
@Override
public final Node leaveBinaryNode(final BinaryNode binaryNode) {
    switch (binaryNode.tokenType()) {
    case ADD:
        return leaveADD(binaryNode);
    case AND:
        return leaveAND(binaryNode);
    case ASSIGN:
        return leaveASSIGN(binaryNode);
    case ASSIGN_ADD:
        return leaveASSIGN_ADD(binaryNode);
    case ASSIGN_BIT_AND:
        return leaveASSIGN_BIT_AND(binaryNode);
    case ASSIGN_BIT_OR:
        return leaveASSIGN_BIT_OR(binaryNode);
    case ASSIGN_BIT_XOR:
        return leaveASSIGN_BIT_XOR(binaryNode);
    case ASSIGN_DIV:
        return leaveASSIGN_DIV(binaryNode);
    case ASSIGN_MOD:
        return leaveASSIGN_MOD(binaryNode);
    case ASSIGN_MUL:
        return leaveASSIGN_MUL(binaryNode);
    case ASSIGN_SAR:
        return leaveASSIGN_SAR(binaryNode);
    case ASSIGN_SHL:
        return leaveASSIGN_SHL(binaryNode);
    case ASSIGN_SHR:
        return leaveASSIGN_SHR(binaryNode);
    case ASSIGN_SUB:
        return leaveASSIGN_SUB(binaryNode);
    case BIND:
        return leaveBIND(binaryNode);
    case BIT_AND:
        return leaveBIT_AND(binaryNode);
    case BIT_OR:
        return leaveBIT_OR(binaryNode);
    case BIT_XOR:
        return leaveBIT_XOR(binaryNode);
    case COMMARIGHT:
        return leaveCOMMARIGHT(binaryNode);
    case COMMALEFT:
        return leaveCOMMALEFT(binaryNode);
    case DIV:
        return leaveDIV(binaryNode);
    case EQ:
        return leaveEQ(binaryNode);
    case EQ_STRICT:
        return leaveEQ_STRICT(binaryNode);
    case GE:
        return leaveGE(binaryNode);
    case GT:
        return leaveGT(binaryNode);
    case IN:
        return leaveIN(binaryNode);
    case INSTANCEOF:
        return leaveINSTANCEOF(binaryNode);
    case LE:
        return leaveLE(binaryNode);
    case LT:
        return leaveLT(binaryNode);
    case MOD:
        return leaveMOD(binaryNode);
    case MUL:
        return leaveMUL(binaryNode);
    case NE:
        return leaveNE(binaryNode);
    case NE_STRICT:
        return leaveNE_STRICT(binaryNode);
    case OR:
        return leaveOR(binaryNode);
    case SAR:
        return leaveSAR(binaryNode);
    case SHL:
        return leaveSHL(binaryNode);
    case SHR:
        return leaveSHR(binaryNode);
    case SUB:
        return leaveSUB(binaryNode);
    default:
        return super.leaveBinaryNode(binaryNode);
    }
}
 
Example 19
Source File: NodeOperatorVisitor.java    From jdk8u60 with GNU General Public License v2.0 4 votes vote down vote up
@Override
public final boolean enterBinaryNode(final BinaryNode binaryNode) {
    switch (binaryNode.tokenType()) {
    case ADD:
        return enterADD(binaryNode);
    case AND:
        return enterAND(binaryNode);
    case ASSIGN:
        return enterASSIGN(binaryNode);
    case ASSIGN_ADD:
        return enterASSIGN_ADD(binaryNode);
    case ASSIGN_BIT_AND:
        return enterASSIGN_BIT_AND(binaryNode);
    case ASSIGN_BIT_OR:
        return enterASSIGN_BIT_OR(binaryNode);
    case ASSIGN_BIT_XOR:
        return enterASSIGN_BIT_XOR(binaryNode);
    case ASSIGN_DIV:
        return enterASSIGN_DIV(binaryNode);
    case ASSIGN_MOD:
        return enterASSIGN_MOD(binaryNode);
    case ASSIGN_MUL:
        return enterASSIGN_MUL(binaryNode);
    case ASSIGN_SAR:
        return enterASSIGN_SAR(binaryNode);
    case ASSIGN_SHL:
        return enterASSIGN_SHL(binaryNode);
    case ASSIGN_SHR:
        return enterASSIGN_SHR(binaryNode);
    case ASSIGN_SUB:
        return enterASSIGN_SUB(binaryNode);
    case BIND:
        return enterBIND(binaryNode);
    case BIT_AND:
        return enterBIT_AND(binaryNode);
    case BIT_OR:
        return enterBIT_OR(binaryNode);
    case BIT_XOR:
        return enterBIT_XOR(binaryNode);
    case COMMARIGHT:
        return enterCOMMARIGHT(binaryNode);
    case COMMALEFT:
        return enterCOMMALEFT(binaryNode);
    case DIV:
        return enterDIV(binaryNode);
    case EQ:
        return enterEQ(binaryNode);
    case EQ_STRICT:
        return enterEQ_STRICT(binaryNode);
    case GE:
        return enterGE(binaryNode);
    case GT:
        return enterGT(binaryNode);
    case IN:
        return enterIN(binaryNode);
    case INSTANCEOF:
        return enterINSTANCEOF(binaryNode);
    case LE:
        return enterLE(binaryNode);
    case LT:
        return enterLT(binaryNode);
    case MOD:
        return enterMOD(binaryNode);
    case MUL:
        return enterMUL(binaryNode);
    case NE:
        return enterNE(binaryNode);
    case NE_STRICT:
        return enterNE_STRICT(binaryNode);
    case OR:
        return enterOR(binaryNode);
    case SAR:
        return enterSAR(binaryNode);
    case SHL:
        return enterSHL(binaryNode);
    case SHR:
        return enterSHR(binaryNode);
    case SUB:
        return enterSUB(binaryNode);
    default:
        return super.enterBinaryNode(binaryNode);
    }
}
 
Example 20
Source File: NodeOperatorVisitor.java    From TencentKona-8 with GNU General Public License v2.0 4 votes vote down vote up
@Override
public final Node leaveBinaryNode(final BinaryNode binaryNode) {
    switch (binaryNode.tokenType()) {
    case ADD:
        return leaveADD(binaryNode);
    case AND:
        return leaveAND(binaryNode);
    case ASSIGN:
        return leaveASSIGN(binaryNode);
    case ASSIGN_ADD:
        return leaveASSIGN_ADD(binaryNode);
    case ASSIGN_BIT_AND:
        return leaveASSIGN_BIT_AND(binaryNode);
    case ASSIGN_BIT_OR:
        return leaveASSIGN_BIT_OR(binaryNode);
    case ASSIGN_BIT_XOR:
        return leaveASSIGN_BIT_XOR(binaryNode);
    case ASSIGN_DIV:
        return leaveASSIGN_DIV(binaryNode);
    case ASSIGN_MOD:
        return leaveASSIGN_MOD(binaryNode);
    case ASSIGN_MUL:
        return leaveASSIGN_MUL(binaryNode);
    case ASSIGN_SAR:
        return leaveASSIGN_SAR(binaryNode);
    case ASSIGN_SHL:
        return leaveASSIGN_SHL(binaryNode);
    case ASSIGN_SHR:
        return leaveASSIGN_SHR(binaryNode);
    case ASSIGN_SUB:
        return leaveASSIGN_SUB(binaryNode);
    case BIND:
        return leaveBIND(binaryNode);
    case BIT_AND:
        return leaveBIT_AND(binaryNode);
    case BIT_OR:
        return leaveBIT_OR(binaryNode);
    case BIT_XOR:
        return leaveBIT_XOR(binaryNode);
    case COMMARIGHT:
        return leaveCOMMARIGHT(binaryNode);
    case COMMALEFT:
        return leaveCOMMALEFT(binaryNode);
    case DIV:
        return leaveDIV(binaryNode);
    case EQ:
        return leaveEQ(binaryNode);
    case EQ_STRICT:
        return leaveEQ_STRICT(binaryNode);
    case GE:
        return leaveGE(binaryNode);
    case GT:
        return leaveGT(binaryNode);
    case IN:
        return leaveIN(binaryNode);
    case INSTANCEOF:
        return leaveINSTANCEOF(binaryNode);
    case LE:
        return leaveLE(binaryNode);
    case LT:
        return leaveLT(binaryNode);
    case MOD:
        return leaveMOD(binaryNode);
    case MUL:
        return leaveMUL(binaryNode);
    case NE:
        return leaveNE(binaryNode);
    case NE_STRICT:
        return leaveNE_STRICT(binaryNode);
    case OR:
        return leaveOR(binaryNode);
    case SAR:
        return leaveSAR(binaryNode);
    case SHL:
        return leaveSHL(binaryNode);
    case SHR:
        return leaveSHR(binaryNode);
    case SUB:
        return leaveSUB(binaryNode);
    default:
        return super.leaveBinaryNode(binaryNode);
    }
}