/* * Copyright (c) 2010-2016 Isode Limited. * All rights reserved. * See the COPYING file for more information. */ #pragma once #include #include #include namespace Swift { template class SWIFTEN_API GenericElementSerializer : public ElementSerializer { public: virtual SafeByteArray serialize(std::shared_ptr element) const = 0; virtual bool canSerialize(std::shared_ptr element) const { return !!std::dynamic_pointer_cast(element); } }; }