// Copyright 2016-2019, Pulumi Corporation namespace Pulumi { /// /// Useful static utility methods for both creating and working wit s. /// public static partial class Output { private static readonly Output _zeroOut = Create(0); private static readonly Input _zeroIn = Create(0); /// /// Combines all the values in the provided parameters and combines /// them all into a single tuple containing each of their underlying values. If any of the /// s are not known, the final result will be not known. Similarly, /// if any of the s are secrets, then the final result will be a /// secret. /// public static Output<(T1, T2, T3, T4, T5, T6, T7, T8)> Tuple( Input item1, Input item2, Input item3, Input item4, Input item5, Input item6, Input item7, Input item8) => Output<(T1, T2, T3, T4, T5, T6, T7, T8)>.Tuple( item1, item2, item3, item4, item5, item6, item7, item8); #region Overloads that take different numbers of inputs. /// /// /// public static Output<(T1, T2)> Tuple( Input item1, Input item2) => Tuple(item1, item2, _zeroIn, _zeroIn, _zeroIn, _zeroIn, _zeroIn, _zeroIn) .Apply(v => (v.Item1, v.Item2)); /// /// /// public static Output<(T1, T2, T3)> Tuple( Input item1, Input item2, Input item3) => Tuple(item1, item2, item3, _zeroIn, _zeroIn, _zeroIn, _zeroIn, _zeroIn) .Apply(v => (v.Item1, v.Item2, v.Item3)); /// /// /// public static Output<(T1, T2, T3, T4)> Tuple( Input item1, Input item2, Input item3, Input item4) => Tuple(item1, item2, item3, item4, _zeroIn, _zeroIn, _zeroIn, _zeroIn) .Apply(v => (v.Item1, v.Item2, v.Item3, v.Item4)); /// /// /// public static Output<(T1, T2, T3, T4, T5)> Tuple( Input item1, Input item2, Input item3, Input item4, Input item5) => Tuple(item1, item2, item3, item4, item5, _zeroIn, _zeroIn, _zeroIn) .Apply(v => (v.Item1, v.Item2, v.Item3, v.Item4, v.Item5)); /// /// /// public static Output<(T1, T2, T3, T4, T5, T6)> Tuple( Input item1, Input item2, Input item3, Input item4, Input item5, Input item6) => Tuple(item1, item2, item3, item4, item5, item6, _zeroIn, _zeroIn) .Apply(v => (v.Item1, v.Item2, v.Item3, v.Item4, v.Item5, v.Item6)); /// /// /// public static Output<(T1, T2, T3, T4, T5, T6, T7)> Tuple( Input item1, Input item2, Input item3, Input item4, Input item5, Input item6, Input item7) => Tuple(item1, item2, item3, item4, item5, item6, item7, _zeroIn) .Apply(v => (v.Item1, v.Item2, v.Item3, v.Item4, v.Item5, v.Item6, v.Item7)); #endregion #region Overloads that take different numbers of outputs. /// /// /// public static Output<(T1, T2)> Tuple( Output item1, Output item2) => Tuple(item1, item2, _zeroOut, _zeroOut, _zeroOut, _zeroOut, _zeroOut, _zeroOut) .Apply(v => (v.Item1, v.Item2)); /// /// /// public static Output<(T1, T2, T3)> Tuple( Output item1, Output item2, Output item3) => Tuple(item1, item2, item3, _zeroOut, _zeroOut, _zeroOut, _zeroOut, _zeroOut) .Apply(v => (v.Item1, v.Item2, v.Item3)); /// /// /// public static Output<(T1, T2, T3, T4)> Tuple( Output item1, Output item2, Output item3, Output item4) => Tuple(item1, item2, item3, item4, _zeroOut, _zeroOut, _zeroOut, _zeroOut) .Apply(v => (v.Item1, v.Item2, v.Item3, v.Item4)); /// /// /// public static Output<(T1, T2, T3, T4, T5)> Tuple( Output item1, Output item2, Output item3, Output item4, Output item5) => Tuple(item1, item2, item3, item4, item5, _zeroOut, _zeroOut, _zeroOut) .Apply(v => (v.Item1, v.Item2, v.Item3, v.Item4, v.Item5)); /// /// /// public static Output<(T1, T2, T3, T4, T5, T6)> Tuple( Output item1, Output item2, Output item3, Output item4, Output item5, Output item6) => Tuple(item1, item2, item3, item4, item5, item6, _zeroOut, _zeroOut) .Apply(v => (v.Item1, v.Item2, v.Item3, v.Item4, v.Item5, v.Item6)); /// /// /// public static Output<(T1, T2, T3, T4, T5, T6, T7)> Tuple( Output item1, Output item2, Output item3, Output item4, Output item5, Output item6, Output item7) => Tuple(item1, item2, item3, item4, item5, item6, item7, _zeroOut) .Apply(v => (v.Item1, v.Item2, v.Item3, v.Item4, v.Item5, v.Item6, v.Item7)); /// /// /// public static Output<(T1, T2, T3, T4, T5, T6, T7, T8)> Tuple( Output item1, Output item2, Output item3, Output item4, Output item5, Output item6, Output item7, Output item8) => Output<(T1, T2, T3, T4, T5, T6, T7, T8)>.Tuple( (Input)item1, (Input)item2, (Input)item3, (Input)item4, (Input)item5, (Input)item6, (Input)item7, (Input)item8); #endregion } }