code: @SuppressWarnings("all")
      public void retain() {
          if (allocationDebugging) {
              AllocationDebugger.getInstance().retain(this);
          }
          final int baseCount = refcount.getAndIncrement();
          if (allocationDebugging && baseCount < 1) {
              throw new RuntimeException("attempt to retain object with invalid ref count");
          }
      }
docs: {@inheritDoc}