Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.google.common.base
Class Functions

    java.lang.Object
      com.google.common.base.Functions

    public final class Functions

extends Object

Useful functions.

All methods returns serializable functions as long as they're given serializable parameters.

Author:
  Mike Bostock, Vlad Patryshev, Jared Levy

Method Summary
`static
`<A,B,C> Function<A,C>`
` | `compose(Function<B,C> g, Function<A,? extends B> f)` Returns the composition of two functions.
`static
`<E> Function<Object,E>`
` | `constant(E value)` Creates a function that returns `value` for any input.
`static
`<K,V> Function<K,V>`
` | `forMap(Map<K,? extends V> map, V defaultValue)` Returns a function which performs a map lookup with a default value.
`static
`<K,V> Function<K,V>`
` | `forMap(Map<K,V> map)` Returns a function which performs a map lookup.
`static
`<T> Function<T,Boolean>`
` | `forPredicate(Predicate<T> predicate)` Creates a function that returns the same boolean output as the given predicate for all inputs.
`static
`<E> Function<E,E>`
` | `identity()` Returns the identity function.
`static Function<Object,String>` | `toStringFunction()` Returns a function that calls `toString()` on its argument.

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Method Detail

### toStringFunction

    public static Function<Object,String> toStringFunction()

  Returns a function that calls `toString()` on its argument. The function does not accept nulls; it will throw a `NullPointerException` when applied to `null`.

### identity

    public static <E> Function<E,E> identity()

  Returns the identity function.

### forMap

    public static <K,V> Function<K,V> forMap(Map<K,V> map)

  Returns a function which performs a map lookup. The returned function throws an `IllegalArgumentException` if given a key that does not exist in the map.

### forMap

    public static <K,V> Function<K,V> forMap(Map<K,? extends V> map,
                                             @Nullable
                                             V defaultValue)

  Returns a function which performs a map lookup with a default value. The function created by this method returns `defaultValue` for all inputs that do not belong to the map's key set.

  Parameters:
    `map` - source map that determines the function behavior
    `defaultValue` - the value to return for inputs that aren't map keys
  Returns:
    function that returns `map.get(a)` when `a` is a key, or `defaultValue` otherwise

### compose

    public static <A,B,C> Function<A,C> compose(Function<B,C> g,
                                                Function<A,? extends B> f)

  Returns the composition of two functions. For `f: A->B` and `g: B->C`, composition is defined as the function h such that `h(a) == g(f(a))` for each `a`.

  Parameters:
    `g` - the second function to apply
    `f` - the first function to apply
  Returns:
    the composition of `f` and `g`
  See Also:
    function composition

### forPredicate

    public static <T> Function<T,Boolean> forPredicate(Predicate<T> predicate)

  Creates a function that returns the same boolean output as the given predicate for all inputs.

### constant

    public static <E> Function<Object,E> constant(@Nullable
                                                  E value)

  Creates a function that returns `value` for any input.

  Parameters:
    `value` - the constant value for the function to return
  Returns:
    a function that always returns `value`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD