override def prepare()

in core/src/main/scala/com/spotify/featran/transformers/PositionEncoder.scala [50:69]


  override def prepare(a: String): Set[String] = Set(a)
  override def featureDimension(c: SortedMap[String, Int]): Int = 1
  override def featureNames(c: SortedMap[String, Int]): Seq[String] = Seq(name)
  override def buildFeatures(
    a: Option[String],
    c: SortedMap[String, Int],
    fb: FeatureBuilder[_]
  ): Unit =
    a match {
      case Some(k) =>
        c.get(k) match {
          case Some(v) => fb.add(name, v.toDouble)
          case None =>
            fb.skip(1)
            fb.reject(this, FeatureRejection.Unseen(Set(k)))
        }
      case None =>
        fb.skip(1)
        fb.reject(this, FeatureRejection.Collision)
    }