public IEnumerable BuildPropertyMetaMap()

in src/DeloitteDigital.Atlas/Mapping/Meta/PropertyMetaBuilder.cs [11:28]


        public IEnumerable<IPropertyMeta> BuildPropertyMetaMap<TModel>()
        {
            var modelType = typeof(TModel);
            var propertyMap = new List<IPropertyMeta>();
            var propertyMetaCollection = BuildMappingDictionary(modelType);

            foreach (var property in modelType.GetProperties())
            {
                var attributes = property.GetCustomAttributes(true);
                propertyMap.AddRange(
                    attributes.Where(x => x is IMappingAttribute)
                        .Cast<IMappingAttribute>()
                        .Select(attribute => attribute.CreatePropertyMeta<TModel>(property, propertyMetaCollection))
                        .Where(propertyMeta => propertyMeta != default(IPropertyMeta)));
            }

            return propertyMap;
        }