code: @Override
    public <T> Streamlet<T> transform(
        SerializableTransformer<R, ? extends T> serializableTransformer) {
      checkNotNull(serializableTransformer, "serializableTransformer cannot be null");
  
      TransformStreamlet<R, T> transformStreamlet =
          new TransformStreamlet<>(this, serializableTransformer);
      addChild(transformStreamlet);
      return transformStreamlet;
    }
docs: Returns a new Streamlet by applying the transformFunction on each element of this streamlet.
  Before starting to cycle the transformFunction over the Streamlet, the open function is called.
  This allows the transform Function to do any kind of initialization/loading, etc.
  @param serializableTransformer The transformation function to be applied
  @param <T> The return type of the transform
  @return Streamlet containing the output of the transformFunction