modules: get rid of struct module_info

Since this struct only contained function pointers, make all modules
export those functions directly.

The plugin manager now defines a module interface struct, and fills it
it by dlsym:ing the functions that used to be in module_info.
This commit is contained in:
Daniel Eklöf 2019-01-13 17:09:11 +01:00
parent 07b1615a41
commit bc62843c91
16 changed files with 57 additions and 111 deletions

View file

@ -311,14 +311,14 @@ xwindow_new(struct particle *label)
return mod;
}
static struct module *
struct module *
from_conf(const struct yml_node *node, struct conf_inherit inherited)
{
const struct yml_node *c = yml_get_value(node, "content");
return xwindow_new(conf_to_particle(c, inherited));
}
static bool
bool
verify_conf(keychain_t *chain, const struct yml_node *node)
{
static const struct attr_info attrs[] = {
@ -329,8 +329,3 @@ verify_conf(keychain_t *chain, const struct yml_node *node)
return conf_verify_dict(chain, node, attrs);
}
const struct module_info plugin_info = {
.verify_conf = &verify_conf,
.from_conf = &from_conf,
};