package org.enumerable.lambda.support.functionaljava;
import static fj.Show.*;
import static fj.data.Array.*;
import static junit.framework.Assert.*;
import static org.enumerable.lambda.support.functionaljava.LambdaFunctionalJava.*;
import org.enumerable.lambda.annotation.LambdaParameter;
import org.junit.Test;
import fj.Show;
import fj.data.Array;
import fj.data.Stream;
public final class Array_bind {
@LambdaParameter
static Integer i;
@LambdaParameter
static Object any;
@Test
public void test() {
final Array<Integer> a = array(97, 44, 67, 3, 22, 90, 1, 77, 98, 1078, 6, 64, 6, 79, 42);
final Array<Integer> b = a.bind(λ(i, array(500, i)));
assertEquals("{500,97,500,44,500,67,500,3,500,22,500,90,500,1,500,77,500,98,500,1078,500,6,500,64,500,6,500,79,500,42}", arrayShow(intShow()).showS(b));
// {500,97,500,44,500,67,500,3,500,22,500,90,500,1,500,77,500,98,500,1078,500,6,500,64,500,6,500,79,500,42}
}
public static final Show<Integer> intShow() {
return anyShow();
}
@SuppressWarnings("unchecked")
public static <T> Show<T> anyShow() {
return (Show<T>) show(λ(any, Stream.fromString(any.toString())));
}
}