blob: 79c693f338a8c4696bdbe4956fcf3b480da93ef2 [file] [log] [blame]
David Tolnay37531b42020-09-01 15:51:38 -07001#include "demo/include/demo.h"
2#include "demo/src/main.rs.h"
David Tolnay7db73692019-10-20 14:51:12 -04003#include <iostream>
4
5namespace org {
David Tolnayaa17a5a2020-03-01 13:44:24 -08006namespace example {
David Tolnay7db73692019-10-20 14:51:12 -04007
8ThingC::ThingC(std::string appname) : appname(std::move(appname)) {}
9
10ThingC::~ThingC() { std::cout << "done with ThingC" << std::endl; }
11
David Tolnay7c295462020-04-25 12:45:07 -070012std::unique_ptr<ThingC> make_demo(rust::Str appname) {
David Tolnayc13ad232020-05-11 20:35:14 -070013 return std::make_unique<ThingC>(std::string(appname));
David Tolnay7db73692019-10-20 14:51:12 -040014}
15
David Tolnayb6a5f672020-04-17 15:04:56 -070016const std::string &get_name(const ThingC &thing) { return thing.appname; }
17
David Tolnay4f644702020-04-23 13:45:53 -070018void do_thing(SharedThing state) { print_r(*state.y); }
David Tolnay7db73692019-10-20 14:51:12 -040019
David Tolnayaa17a5a2020-03-01 13:44:24 -080020} // namespace example
David Tolnay7db73692019-10-20 14:51:12 -040021} // namespace org