package jetbrains.mps.baseLanguage.tuples.test; /*Generated by MPS */ import java.util.Map; import jetbrains.mps.baseLanguage.closures.runtime._FunctionTypes; import jetbrains.mps.internal.collections.runtime.IMapping; import jetbrains.mps.internal.collections.runtime.MapSequence; import jetbrains.mps.baseLanguage.tuples.runtime.MultiTuple; public class NamedTupleInFunctionType { public NamedTupleInFunctionType() { } public void foo(Map<String, TwoStrings> map, _FunctionTypes._void_P1_E0<? super IMapping<String, TwoStrings>> mpng) { MapSequence.fromMap(map).visitAll(mpng); } public void m(_FunctionTypes._void_P1_E0<? super NamedTupleInFunctionType.G<TwoStrings>> fun) { fun.invoke(new NamedTupleInFunctionType.G<TwoStrings>()); } public void _void_P1(_FunctionTypes._void_P1_E0<? super Pair<IntPair, TwoStrings>> fun) { fun.invoke(new Pair<IntPair, TwoStrings>(new IntPair(1, 2), new TwoStrings("one", "two"))); } public void _void_P2(_FunctionTypes._void_P2_E0<? super IntPair, ? super Pair> fun) { _void_P2(fun); } public void _value_P0(_FunctionTypes._return_P0_E0<? extends Pair<IntPair, TwoStrings>> fun) { Pair<IntPair, TwoStrings> pair = fun.invoke(); } public class G<T> { public G() { } public T get() { return null; } public void set(T t) { } } public static class TwoStrings extends MultiTuple._2<String, String> { public TwoStrings() { super(); } public TwoStrings(String s1, String s2) { super(s1, s2); } public String s1(String value) { return super._0(value); } public String s2(String value) { return super._1(value); } public String s1() { return super._0(); } public String s2() { return super._1(); } } }