protected virtual List<Type> FindSerializerModifiers(Type type)
{
var modifiers = new List<Type>();
List<Type> customModifierTypes = null;
if (_serializationModifierDefinitionsPerTypeCache.TryGetValue(type, out customModifierTypes))
{
modifiers.AddRange(customModifierTypes);
}
var attributes = type.GetCustomAttributesEx(typeof(SerializerModifierAttribute), true);
foreach (var attribute in attributes)
{
modifiers.Add(((SerializerModifierAttribute)attribute).SerializerModifierType);
}
modifiers.Reverse();
return modifiers;
}