code: @Override
      public T apply(T entity) {
  
          switch (this.mode) {
              case NEW_VALUE_MODE:
                  return value(entity, this.element, this.value, false);
              case MIN_MODE:
                  return min(entity, this.element);
              case MAX_MODE:
                  return max(entity, this.element);
              case FLOOR_MODE:
                  return floor(entity, this.element);
              case CEILING_MODE:
                  return ceiling(entity, this.element);
              case LENIENT_MODE:
                  return value(entity, this.element, this.value, true);
              case DECREMENTING_MODE:
                  return this.move(entity, false);
              case INCREMENTING_MODE:
                  return this.move(entity, true);
              default:
                  throw new UnsupportedOperationException(
                      "Unknown mode: " + this.mode);
          }
  
      }
docs: ~ Methoden ------------------------------------------------------