module.h 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. // Module search function
  2. // Copyright (C) 2015 Legimet
  3. //
  4. // This file is part of Duktape-nspire.
  5. //
  6. // Duktape-nspire is free software: you can redistribute it and/or modify
  7. // it under the terms of the GNU Lesser General Public License as published by
  8. // the Free Software Foundation, either version 3 of the License, or
  9. // (at your option) any later version.
  10. //
  11. // Duktape-nspire is distributed in the hope that it will be useful,
  12. // but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  14. // GNU Lesser General Public License for more details.
  15. //
  16. // You should have received a copy of the GNU Lesser General Public License
  17. // along with Duktape-nspire. If not, see <http://www.gnu.org/licenses/>.
  18. #ifndef MODULE_H
  19. #define MODULE_H
  20. #include "duktape.h"
  21. #include "fs.h"
  22. #include "nsp_keys.h"
  23. #include "nsp_texture.h"
  24. struct c_module {
  25. const char *name;
  26. duk_ret_t (*init_func)(duk_context*);
  27. };
  28. static const struct c_module c_module_list[] = {
  29. {"fs", dukopen_fs},
  30. {"nsp/keys", dukopen_nsp_keys},
  31. {"nsp/texture", dukopen_nsp_texture}
  32. };
  33. static const unsigned c_module_count = (sizeof(c_module_list) / sizeof(c_module_list[0]));
  34. duk_ret_t cb_resolve_module(duk_context *ctx);
  35. duk_ret_t cb_load_module(duk_context *ctx);
  36. #endif