Adrian Malacoda
|
5c87b9001a
|
simplify Envelope type, just have event loop threads generate Events which are then wrapped by Envelopes transparently
|
2018-02-22 02:40:22 -06:00 |
|
Adrian Malacoda
|
3614c7eb5d
|
update all dependencies to latest version. Need to wait for discord-rs to update though
|
2018-02-18 16:29:30 -06:00 |
|
Adrian Malacoda
|
9e9da11f79
|
begin tenquestionmarks 0.0.2. Separate Module trait into Module struct (which holds metadata and config about the module) and EventLoop trait, which implements the event loop. The constructors still return Modules, but they are structs and not boxes.
|
2017-05-09 22:44:33 -05:00 |
|
Adrian Malacoda
|
fd1aecf4d3
|
add support for "general" config in the module loader. The "general" config is found under the "general" heading and is passed to each module constructor.
|
2017-02-26 02:44:53 -06:00 |
|
Adrian Malacoda
|
1fbba2554d
|
replace Sender with ExtSender from transformable_channels. Now we can tag each outgoing envelope with the name of its sender
|
2017-02-25 21:11:25 -06:00 |
|
Adrian Malacoda
|
4d5a412395
|
we're sending Envelope and transmitting Arc<Envelope>, since we're wrapping the Envelope in an Arc to transmit it, we (probably) don't need to wrap the Event in an Arc too
|
2017-02-25 20:33:47 -06:00 |
|
Adrian Malacoda
|
37a9645f5b
|
Simplify module trait by combining produce/consume event methods into a single run method that runs in the module's own thread and can produce and/or consume events. Introduce an Envelope struct that encapsulates event + to/from so we can (eventually) tag every event and also limit where events are sent (e.g. you can have a specific module configured to talk or listen only to a certain other module).
|
2017-02-25 20:17:46 -06:00 |
|
Adrian Malacoda
|
0f945ec604
|
create a dedicated Message struct and implement reply(&str) on there, since it seems to be a commonly used thing. Begin implementing helpers for command parsing.
|
2017-02-19 05:37:56 -06:00 |
|
Adrian Malacoda
|
84d2921f8f
|
send/receive Arc<Event> instead of Event so we don't have to clone objects all over the place. This might also enable us to be a bit more flexible with what we send with Events, and might simplify things elsewhere.
|
2017-02-19 02:55:30 -06:00 |
|
Adrian Malacoda
|
5fc231eec6
|
Add logging
|
2017-02-17 02:38:15 -06:00 |
|
Adrian Malacoda
|
0a51c7294f
|
rename plugin -> module
|
2017-02-16 01:05:33 -06:00 |
|