/core/src/main/scala/scalaz/Index.scala
http://github.com/scalaz/scalaz · Scala · 35 lines · 12 code · 7 blank · 16 comment · 0 complexity · 5609350ac6517eedd61f9f603e7b8573 MD5 · raw file
- package scalaz
- ////
- /**
- * Random access through an integer index.
- */
- ////
- @deprecated("Index is deprecated, use Foldable#index instead", "7.1")
- trait Index[F[_]] { self =>
- ////
- /**
- * @return the element at index `i` in a `Some`, or `None` if the given index falls outside of the range
- */
- def index[A](fa: F[A], i: Int): Option[A]
- /**
- * @return the element at index `i`, or `default` if the given index falls outside of the range
- */
- def indexOr[A](fa: F[A], default: => A, i: Int): A =
- index(fa, i) getOrElse default
- // derived functions
- ////
- val indexSyntax = new scalaz.syntax.IndexSyntax[F] { def F = Index.this }
- }
- @deprecated("Index is deprecated, use Foldable#index instead", "7.1")
- object Index {
- @inline def apply[F[_]](implicit F: Index[F]): Index[F] = F
- ////
- ////
- }