示例#1
0
    public void BlinqShouldEqualLinqNativeArrayJoinNativeArray(
        [ValueSource(typeof(JoinAValues), nameof(JoinAValues.Values))] JoinA[] outerArr,
        [ValueSource(typeof(JoinBValues), nameof(JoinBValues.Values))] JoinB[] innerArr
        )
    {
        var outer    = new NativeArray <JoinA>(outerArr, Allocator.Persistent);
        var inner    = new NativeArray <JoinB>(innerArr, Allocator.Persistent);
        var expected = ExceptionAndValue(() => Linq.ToArray(Linq.Join(outer, inner, JoinAKeySelector.Invoke, JoinBKeySelector.Invoke, JointABSelector.Invoke)));
        var actual   = ExceptionAndValue(() => Linq.ToArray(Blinq.Join(outer, inner, JoinAKeySelector, JoinBKeySelector, JointABSelector)));

        AssertAreEqual(expected, actual);
        outer.Dispose();
        inner.Dispose();
    }
示例#2
0
 public static IEnumerable <TResult> Join <TOuter, TInner, TKey, TResult>(this IEnumerable <TOuter> outer, IEnumerable <TInner> inner, Func <TOuter, TKey> outerKeySelector, Func <TInner, TKey> innerKeySelector, Func <TOuter, TInner, TResult> resultSelector, IEqualityComparer <TKey> comparer) =>
 LinqEnumerable.Join(outer, inner, outerKeySelector, innerKeySelector, resultSelector, comparer);
 public static IEnumerable <TResult> Join <TOuter, TInner, TKey, TResult>(this IEnumerable <TOuter> outer, IEnumerable <TInner> inner, Func <TOuter, TKey> outerKeySelector, Func <TInner, TKey> innerKeySelector, Func <TOuter, TInner, TResult> resultSelector)
 => Enumerable.Join(outer, inner, outerKeySelector, innerKeySelector, resultSelector);