MusicCatalogue.Services.Areas.HelpPage.ObjectGenerator.GenerateTuple C# (CSharp) Method

GenerateTuple() private static method

private static GenerateTuple ( Type type, object>.Dictionary createdObjectReferences ) : object
type System.Type
createdObjectReferences object>.Dictionary
return object
        private static object GenerateTuple(Type type, Dictionary<Type, object> createdObjectReferences)
        {
            Type[] genericArgs = type.GetGenericArguments();
            object[] parameterValues = new object[genericArgs.Length];
            bool failedToCreateTuple = true;
            ObjectGenerator objectGenerator = new ObjectGenerator();
            for (int i = 0; i < genericArgs.Length; i++)
            {
                parameterValues[i] = objectGenerator.GenerateObject(genericArgs[i], createdObjectReferences);
                failedToCreateTuple &= parameterValues[i] == null;
            }
            if (failedToCreateTuple)
            {
                return null;
            }
            object result = Activator.CreateInstance(type, parameterValues);
            return result;
        }