private static <TNode extends AvlNode> TNode rotateLeft(TNode q) {
      TNode p = (TNode) q.avlRight;
      q.avlRight = p.avlLeft;
      p.avlLeft = q;
      fixHeight(q);
      fixHeight(p);
      return p;
    }
Visit each node of the tree
@param root    the current root of the tree
@param visitor the AvlNodeVisitor instance
hbase-common/src/main/java/org/apache/hadoop/hbase/util/AvlUtil.java