Esempio n. 1
0
        public void AcceptOnStaticMethods(ISerializableTypeVisitor visitor)
        {
            var staticMethods = _type.GetMethods(BindingFlagsForStaticMembers);

            foreach (var staticMethod in staticMethods)
            {
                ProcessAttributes <SerializerAttribute>(staticMethod, visitor.VisitSerializerMethod);
                ProcessAttributes <DeserializerAttribute>(staticMethod, visitor.VisitDeserializerMethod);
            }
        }
Esempio n. 2
0
        public void AcceptOnType(ISerializableTypeVisitor visitor)
        {
            var typeInfo = new SerializableTypeInfo(Type, PackformatName, Version, SerializableMemberCandidates);

            if (HasDataContractAttribute)
            {
                CheckIfTypeHasProperDataContractAttirbuteInHierarchy();
                visitor.VisitSerializableClass(typeInfo);
            }
        }
Esempio n. 3
0
        public void AcceptOnNonStaticMethods(ISerializableTypeVisitor visitor)
        {
            var nonStaticMethods = _type.GetMethods(BindingFlagsForInstanceMembers);

            foreach (var nonStaticMethod in nonStaticMethods)
            {
                ProcessAttributes <SerializerAttribute>(nonStaticMethod, ThrowInvalidAttributeUsage);
                ProcessAttributes <DeserializerAttribute>(nonStaticMethod, visitor.VisitDeserializerMethod);
            }
        }
Esempio n. 4
0
 public SerializationStructureWalker(ISerializableTypeVisitor visitor)
 {
     _visitor = visitor;
 }