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); } }
public void AcceptOnType(ISerializableTypeVisitor visitor) { var typeInfo = new SerializableTypeInfo(Type, PackformatName, Version, SerializableMemberCandidates); if (HasDataContractAttribute) { CheckIfTypeHasProperDataContractAttirbuteInHierarchy(); visitor.VisitSerializableClass(typeInfo); } }
public void AcceptOnNonStaticMethods(ISerializableTypeVisitor visitor) { var nonStaticMethods = _type.GetMethods(BindingFlagsForInstanceMembers); foreach (var nonStaticMethod in nonStaticMethods) { ProcessAttributes <SerializerAttribute>(nonStaticMethod, ThrowInvalidAttributeUsage); ProcessAttributes <DeserializerAttribute>(nonStaticMethod, visitor.VisitDeserializerMethod); } }
public SerializationStructureWalker(ISerializableTypeVisitor visitor) { _visitor = visitor; }