Packages

final class SafeFunction[-In, +Out] extends (In) => Out

A SafeFunction is a function that can be freely composed with the guarantee that functions of arbitrary size can be evaluated in constant stack space. It does this by maintaining each of the composed functions internally in a data structure and evaluating them in a loop when the function is called.

Self Type
SafeFunction[In, Out]
Linear Supertypes
(In) => Out, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. SafeFunction
  2. Function1
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. Protected

Value Members

  1. def andThen[Out2](that: SafeFunction[Out, Out2]): SafeFunction[In, Out2]

    Composes this function with the specified function to return a new function that feeds the output of this function into the specified function.

  2. def andThen[A](g: (Out) => A): (In) => A
    Definition Classes
    Function1
    Annotations
    @unspecialized()
  3. def apply(in: In): Out

    Evaluates the function with the specified argument.

    Evaluates the function with the specified argument.

    Definition Classes
    SafeFunction → Function1
  4. def compose[In2](that: SafeFunction[In2, In]): SafeFunction[In2, Out]

    Composes this function with the specified function to return a new function that feeds the output of the specified function into this function.

  5. def compose[A](g: (A) => In): (A) => Out
    Definition Classes
    Function1
    Annotations
    @unspecialized()
  6. def toString(): String
    Definition Classes
    Function1 → AnyRef → Any