diff options
author | Peter Stephenson <pws@users.sourceforge.net> | 2007-05-28 22:57:39 +0000 |
---|---|---|
committer | Peter Stephenson <pws@users.sourceforge.net> | 2007-05-28 22:57:39 +0000 |
commit | b0c5f09169ac31855ebf0e93772bb57b9635b380 (patch) | |
tree | 410c43a9843b2c88166c2cb9acd531eaa36d036d /Src/Modules/zpty.c | |
parent | bd7632079045b1b6d0dee498c40833b409cf757e (diff) | |
download | zsh-b0c5f09169ac31855ebf0e93772bb57b9635b380.tar.gz zsh-b0c5f09169ac31855ebf0e93772bb57b9635b380.tar.xz zsh-b0c5f09169ac31855ebf0e93772bb57b9635b380.zip |
see 23479: add initial features support for modules
Diffstat (limited to 'Src/Modules/zpty.c')
-rw-r--r-- | Src/Modules/zpty.c | 30 |
1 files changed, 27 insertions, 3 deletions
diff --git a/Src/Modules/zpty.c b/Src/Modules/zpty.c index 744548f50..3280b8175 100644 --- a/Src/Modules/zpty.c +++ b/Src/Modules/zpty.c @@ -725,10 +725,20 @@ ptyhook(UNUSED(Hookdef d), UNUSED(void *dummy)) return 0; } + static struct builtin bintab[] = { BUILTIN("zpty", 0, bin_zpty, 0, -1, 0, "ebdrwLnt", NULL), }; +static struct features module_features = { + bintab, sizeof(bintab)/sizeof(*bintab), + NULL, 0, + NULL, 0, + NULL, 0, + 0 +}; + + /**/ int setup_(UNUSED(Module m)) @@ -738,12 +748,27 @@ setup_(UNUSED(Module m)) /**/ int +features_(Module m, char ***features) +{ + *features = featuresarray(m->nam, &module_features); + return 0; +} + +/**/ +int +enables_(Module m, int **enables) +{ + return handlefeatures(m->nam, &module_features, enables); +} + +/**/ +int boot_(Module m) { ptycmds = NULL; addhookfunc("exit", ptyhook); - return !addbuiltins(m->nam, bintab, sizeof(bintab)/sizeof(*bintab)); + return 0; } /**/ @@ -752,8 +777,7 @@ cleanup_(Module m) { deletehookfunc("exit", ptyhook); deleteallptycmds(); - deletebuiltins(m->nam, bintab, sizeof(bintab)/sizeof(*bintab)); - return 0; + return setfeatureenables(m->nam, &module_features, NULL); } /**/ |