Class AbstractRecursiveOptionProducerWithOptionHandling<O,​I>