diff options
Diffstat (limited to 'examples/cxx/parser/multiroot/protocol-pimpl-tiein.hxx')
-rw-r--r-- | examples/cxx/parser/multiroot/protocol-pimpl-tiein.hxx | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/examples/cxx/parser/multiroot/protocol-pimpl-tiein.hxx b/examples/cxx/parser/multiroot/protocol-pimpl-tiein.hxx new file mode 100644 index 0000000..3a18da0 --- /dev/null +++ b/examples/cxx/parser/multiroot/protocol-pimpl-tiein.hxx @@ -0,0 +1,55 @@ +// file : examples/cxx/parser/multiroot/protocol-pimpl-tiein.hxx +// author : Boris Kolpackov <boris@codesynthesis.com> +// copyright : not copyrighted - public domain + +#ifndef PROTOCOL_PIMPL_HXX +#define PROTOCOL_PIMPL_HXX + +#include "protocol.hxx" +#include "protocol-pskel.hxx" + +namespace protocol +{ + class request_pimpl: public request_pskel + { + public: + virtual void + account (unsigned int); + + virtual request* + post_request (); + + public: + unsigned int account_; + }; + + class balance_pimpl: public balance_pskel + { + public: + balance_pimpl (); + + virtual balance* + post_balance (); + + private: + request_pimpl base_impl_; + }; + + class withdraw_pimpl: public withdraw_pskel + { + public: + withdraw_pimpl (); + + virtual void + amount (unsigned int); + + virtual withdraw* + post_withdraw (); + + private: + request_pimpl base_impl_; + unsigned int amount_; + }; +} + +#endif // PROTOCOL_PIMPL_HXX |