### Question:
RightBoundFunction implements Function<A, T> { public static <L, R, T> RightBoundFunction<L, T> bind(BinaryFunction<? super L, ? super R, ? extends T> function, R arg) { return null == function ? null : new RightBoundFunction<L, T>(function, arg); } @SuppressWarnings("unchecked") <R> RightBoundFunction(BinaryFunction<? super A, ? super R, ? extends T> function, R arg); T evaluate(A obj); @Override boolean equals(Object obj); @Override int hashCode(); @Override String toString(); static RightBoundFunction<L, T> bind(BinaryFunction<? super L, ? super R, ? extends T> function,
                                                          R arg);  }### Answer:
@Test public void testAdaptNull() throws Exception { assertNull(RightBoundFunction.bind(null,"xyzzy")); }
@Test public void testAdapt() throws Exception { assertNotNull(RightBoundFunction.bind(LeftIdentity.FUNCTION,"xyzzy")); assertNotNull(RightBoundFunction.bind(LeftIdentity.FUNCTION,null)); }