Mercurial > irccd
annotate tests/src/libirccd/dynlib-plugin/test_plugin.cpp @ 757:97b356010785
Irccd: create (command|jsapi)::registry
Make two list of constructor functions to initialize all command and all
Javascript modules to avoid duplicating efforts in case of change.
While here, update test fixtures to load all of them for simplicity.
author | David Demelier <markand@malikania.fr> |
---|---|
date | Mon, 06 Aug 2018 21:27:00 +0200 |
parents | 9d13aabfd63a |
children | 8c44bbcbbab9 |
rev | line source |
---|---|
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
1 /* |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
2 * test_plugin.cpp -- basic exported plugin test |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
3 * |
628
27587ff92a64
Misc: update copyrights
David Demelier <markand@malikania.fr>
parents:
611
diff
changeset
|
4 * Copyright (c) 2013-2018 David Demelier <markand@malikania.fr> |
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
5 * |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
6 * Permission to use, copy, modify, and/or distribute this software for any |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
7 * purpose with or without fee is hereby granted, provided that the above |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
8 * copyright notice and this permission notice appear in all copies. |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
9 * |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
10 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
11 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
12 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
13 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
14 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
15 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
16 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
17 */ |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
18 |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
19 #include <boost/dll.hpp> |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
20 |
604
9d4da384f5d6
Tests: move libirccd-test to test/ folder, closes #750
David Demelier <markand@malikania.fr>
parents:
583
diff
changeset
|
21 #include <irccd/daemon/plugin.hpp> |
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
22 |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
23 namespace irccd { |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
24 |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
25 class test_plugin : public plugin { |
684
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
26 private: |
722
3e816cebed2c
Irccd: make plugin pure abstract, closes #796 @3h
David Demelier <markand@malikania.fr>
parents:
716
diff
changeset
|
27 map config_; |
684
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
28 |
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
29 public: |
731
9d13aabfd63a
Irccd: plugin now have internal id
David Demelier <markand@malikania.fr>
parents:
722
diff
changeset
|
30 test_plugin() |
9d13aabfd63a
Irccd: plugin now have internal id
David Demelier <markand@malikania.fr>
parents:
722
diff
changeset
|
31 : plugin("test") |
9d13aabfd63a
Irccd: plugin now have internal id
David Demelier <markand@malikania.fr>
parents:
722
diff
changeset
|
32 { |
9d13aabfd63a
Irccd: plugin now have internal id
David Demelier <markand@malikania.fr>
parents:
722
diff
changeset
|
33 } |
9d13aabfd63a
Irccd: plugin now have internal id
David Demelier <markand@malikania.fr>
parents:
722
diff
changeset
|
34 |
722
3e816cebed2c
Irccd: make plugin pure abstract, closes #796 @3h
David Demelier <markand@malikania.fr>
parents:
716
diff
changeset
|
35 auto get_options() const -> map override |
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
36 { |
684
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
37 return config_; |
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
38 } |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
39 |
722
3e816cebed2c
Irccd: make plugin pure abstract, closes #796 @3h
David Demelier <markand@malikania.fr>
parents:
716
diff
changeset
|
40 auto get_name() const noexcept -> std::string_view override |
3e816cebed2c
Irccd: make plugin pure abstract, closes #796 @3h
David Demelier <markand@malikania.fr>
parents:
716
diff
changeset
|
41 { |
3e816cebed2c
Irccd: make plugin pure abstract, closes #796 @3h
David Demelier <markand@malikania.fr>
parents:
716
diff
changeset
|
42 return "test"; |
3e816cebed2c
Irccd: make plugin pure abstract, closes #796 @3h
David Demelier <markand@malikania.fr>
parents:
716
diff
changeset
|
43 } |
3e816cebed2c
Irccd: make plugin pure abstract, closes #796 @3h
David Demelier <markand@malikania.fr>
parents:
716
diff
changeset
|
44 |
684
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
45 void handle_command(irccd&, const message_event&) override |
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
46 { |
684
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
47 config_["command"] = "true"; |
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
48 } |
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
49 |
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
50 void handle_connect(irccd&, const connect_event&) override |
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
51 { |
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
52 config_["connect"] = "true"; |
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
53 } |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
54 |
684
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
55 void handle_invite(irccd&, const invite_event&) override |
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
56 { |
684
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
57 config_["invite"] = "true"; |
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
58 } |
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
59 |
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
60 void handle_join(irccd&, const join_event&) override |
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
61 { |
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
62 config_["join"] = "true"; |
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
63 } |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
64 |
684
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
65 void handle_kick(irccd&, const kick_event&) override |
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
66 { |
684
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
67 config_["kick"] = "true"; |
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
68 } |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
69 |
684
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
70 void handle_load(irccd&) override |
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
71 { |
684
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
72 config_["load"] = "true"; |
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
73 } |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
74 |
684
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
75 void handle_message(irccd&, const message_event&) override |
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
76 { |
684
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
77 config_["message"] = "true"; |
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
78 } |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
79 |
684
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
80 void handle_me(irccd&, const me_event&) override |
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
81 { |
684
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
82 config_["me"] = "true"; |
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
83 } |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
84 |
684
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
85 void handle_mode(irccd&, const mode_event&) override |
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
86 { |
684
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
87 config_["mode"] = "true"; |
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
88 } |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
89 |
684
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
90 void handle_names(irccd&, const names_event&) override |
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
91 { |
684
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
92 config_["names"] = "true"; |
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
93 } |
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
94 |
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
95 void handle_nick(irccd&, const nick_event&) override |
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
96 { |
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
97 config_["nick"] = "true"; |
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
98 } |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
99 |
684
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
100 void handle_notice(irccd&, const notice_event&) override |
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
101 { |
684
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
102 config_["notice"] = "true"; |
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
103 } |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
104 |
684
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
105 void handle_part(irccd&, const part_event&) override |
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
106 { |
684
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
107 config_["part"] = "true"; |
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
108 } |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
109 |
684
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
110 void handle_reload(irccd&) override |
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
111 { |
684
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
112 config_["reload"] = "true"; |
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
113 } |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
114 |
684
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
115 void handle_topic(irccd&, const topic_event&) override |
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
116 { |
684
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
117 config_["topic"] = "true"; |
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
118 } |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
119 |
684
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
120 void handle_unload(irccd&) override |
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
121 { |
684
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
122 config_["unload"] = "true"; |
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
123 } |
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
124 |
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
125 void handle_whois(irccd&, const whois_event&) override |
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
126 { |
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
127 config_["whois"] = "true"; |
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
128 } |
716
16e83b636cb8
Irccd: use BOOST_DLL_ALIAS to avoid warnings
David Demelier <markand@malikania.fr>
parents:
707
diff
changeset
|
129 |
16e83b636cb8
Irccd: use BOOST_DLL_ALIAS to avoid warnings
David Demelier <markand@malikania.fr>
parents:
707
diff
changeset
|
130 static auto abi() -> version |
16e83b636cb8
Irccd: use BOOST_DLL_ALIAS to avoid warnings
David Demelier <markand@malikania.fr>
parents:
707
diff
changeset
|
131 { |
16e83b636cb8
Irccd: use BOOST_DLL_ALIAS to avoid warnings
David Demelier <markand@malikania.fr>
parents:
707
diff
changeset
|
132 return version(); |
16e83b636cb8
Irccd: use BOOST_DLL_ALIAS to avoid warnings
David Demelier <markand@malikania.fr>
parents:
707
diff
changeset
|
133 } |
16e83b636cb8
Irccd: use BOOST_DLL_ALIAS to avoid warnings
David Demelier <markand@malikania.fr>
parents:
707
diff
changeset
|
134 |
731
9d13aabfd63a
Irccd: plugin now have internal id
David Demelier <markand@malikania.fr>
parents:
722
diff
changeset
|
135 static auto init(std::string) -> std::unique_ptr<plugin> |
716
16e83b636cb8
Irccd: use BOOST_DLL_ALIAS to avoid warnings
David Demelier <markand@malikania.fr>
parents:
707
diff
changeset
|
136 { |
722
3e816cebed2c
Irccd: make plugin pure abstract, closes #796 @3h
David Demelier <markand@malikania.fr>
parents:
716
diff
changeset
|
137 return std::make_unique<test_plugin>(); |
716
16e83b636cb8
Irccd: use BOOST_DLL_ALIAS to avoid warnings
David Demelier <markand@malikania.fr>
parents:
707
diff
changeset
|
138 } |
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
139 }; |
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
140 |
716
16e83b636cb8
Irccd: use BOOST_DLL_ALIAS to avoid warnings
David Demelier <markand@malikania.fr>
parents:
707
diff
changeset
|
141 BOOST_DLL_ALIAS(test_plugin::abi, irccd_abi_test_plugin) |
16e83b636cb8
Irccd: use BOOST_DLL_ALIAS to avoid warnings
David Demelier <markand@malikania.fr>
parents:
707
diff
changeset
|
142 BOOST_DLL_ALIAS(test_plugin::init, irccd_init_test_plugin) |
500
458e34f16c1f
Irccd: rework native plugins, closes #707
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
143 |
684
8d93e415c3b4
Irccd: load directly native plugin instead of wrapping it, closes #790 @1h
David Demelier <markand@malikania.fr>
parents:
636
diff
changeset
|
144 } // !irccd |