template<typename Derived>
class pupene::Pupper< Derived >
Base class for working with puppable types.
Puppers can conceptually be divided into serialization and utility-based.
Serialization puppers
pupene
does not internally distinguish between serialization/deserialization; each target format is therefore implemented as a reader/writer pair:
Utility puppers
Custom and utility-related puppers are usually singular:
Creating puppers: Minimal exemplar
class MinimalPupper :
public Pupper<MinimalPupper> {
public:
template<typename T>
}
template<typename T>
void pup(T& value,
const Meta& meta) {
}
void end(
const Meta& meta) {}
};
When a pupper is better equipped to deal with an object as-is, without pupping its component parts, begin() can return PupPolicy::consume_object, e.g. by using a template specialization:
template <>
set_background(value);
}
- Template Parameters
-
Definition at line 83 of file pupper.h.