All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.aol.cyclops.lambda.tuple.lazyswap.LazySwapPTuple2 Maven / Gradle / Ivy

The newest version!
package com.aol.cyclops.lambda.tuple.lazyswap;

import com.aol.cyclops.lambda.tuple.PTuple2;
import com.aol.cyclops.lambda.tuple.TupleImpl;

import java.util.Arrays;
import java.util.Iterator;
import java.util.List;

public class LazySwapPTuple2 extends TupleImpl{


    private final PTuple2 host;

    public LazySwapPTuple2(PTuple2 host) {
        super(Arrays.asList(), 2);
        this.host = host;
    }

    public T2 v1(){
        return host.v2();
    }

    public T1 v2(){
        return host.v1();
    }


    @Override
    public List getCachedValues() {
        return Arrays.asList(v1(), v2());
    }

    @Override
    public Iterator iterator() {
        return getCachedValues().iterator();
    }


}