| David Tolnay | 7db7369 | 2019-10-20 14:51:12 -0400 | [diff] [blame] | 1 | #pragma once |
| David Tolnay | 736cbca | 2020-03-11 16:49:18 -0700 | [diff] [blame^] | 2 | #include "rust/cxx.h" |
| David Tolnay | 7db7369 | 2019-10-20 14:51:12 -0400 | [diff] [blame] | 3 | #include <memory> |
| 4 | #include <string> |
| 5 | |
| 6 | namespace org { |
| David Tolnay | aa17a5a | 2020-03-01 13:44:24 -0800 | [diff] [blame] | 7 | namespace example { |
| David Tolnay | 7db7369 | 2019-10-20 14:51:12 -0400 | [diff] [blame] | 8 | |
| 9 | class ThingC { |
| 10 | public: |
| 11 | ThingC(std::string appname); |
| 12 | ~ThingC(); |
| 13 | |
| 14 | std::string appname; |
| 15 | }; |
| 16 | |
| 17 | struct SharedThing; |
| 18 | |
| David Tolnay | aa17a5a | 2020-03-01 13:44:24 -0800 | [diff] [blame] | 19 | std::unique_ptr<ThingC> make_demo(rust::Str appname); |
| David Tolnay | 7db7369 | 2019-10-20 14:51:12 -0400 | [diff] [blame] | 20 | const std::string &get_name(const ThingC &thing); |
| 21 | void do_thing(SharedThing state); |
| 22 | |
| David Tolnay | aa17a5a | 2020-03-01 13:44:24 -0800 | [diff] [blame] | 23 | } // namespace example |
| David Tolnay | 7db7369 | 2019-10-20 14:51:12 -0400 | [diff] [blame] | 24 | } // namespace org |