FlatRedBall.Glue.CsvCodeGenerator.GetRequiredKeyType C# (CSharp) Method

GetRequiredKeyType() private static method

private static GetRequiredKeyType ( RuntimeCsvRepresentation rcr, List members, string>.Dictionary untypedMembers, int requiredHeader ) : string
rcr RuntimeCsvRepresentation
members List
untypedMembers string>.Dictionary
requiredHeader int
return string
        private static string GetRequiredKeyType(RuntimeCsvRepresentation rcr, List<TypedMemberBase> members, Dictionary<string, string> untypedMembers, int requiredHeader)
        {
            // At this point the headers have their proper names (like XOffset) and don't include their type, so we
            // can use the simple .Name property
            string requiredMember = rcr.Headers[requiredHeader].Name;

            string type = null;

            foreach (TypedMemberBase tmb in members)
            {
                if (tmb.MemberName == requiredMember)
                {
                    type = tmb.MemberType.FullName;
                    break;
                }
            }

            if (string.IsNullOrEmpty(type))
            {
                foreach (KeyValuePair<string, string> kvp in untypedMembers)
                {
                    if (kvp.Key == requiredMember)
                    {
                        type = kvp.Value;
                        break;
                    }
                }
            }
            return type;
        }