docs: public void visitBooleanExpression(BooleanExpression expression) {
          controller.getCompileStack().pushBooleanExpression();
          int mark = controller.getOperandStack().getStackLength();
          Expression inner = expression.getExpression();
          inner.visit(this);
          controller.getOperandStack().castToBool(mark, true);
          controller.getCompileStack().pop();
      }