예제 #1
0
int
virgo__lua_logging_open(lua_State *L)
{
  lua_newtable(L);

  lua_pushcfunction(L, logging_log);
  lua_setfield(L, -2, "log");

  lua_pushcfunction(L, logging_rotate);
  lua_setfield(L, -2, "rotate");

  lua_pushcfunction(L, logging_set_level);
  lua_setfield(L, -2, "set_level");

  lua_pushcfunction(L, logging_get_level);
  lua_setfield(L, -2, "get_level");


  lua_pushcfunction(L, logging_log_debug);
  lua_setfield(L, -2, "debug");
  lua_pushcfunction(L, logging_log_info);
  lua_setfield(L, -2, "info");
  lua_pushcfunction(L, logging_log_warn);
  lua_setfield(L, -2, "warn");
  lua_pushcfunction(L, logging_log_error);
  lua_setfield(L, -2, "error");
  lua_pushcfunction(L, logging_log_crit);
  lua_setfield(L, -2, "crit");

  VIRGO_DEFINE_CONSTANT(L, VIRGO_LOG_NOTHING);
  VIRGO_DEFINE_CONSTANT_ALIAS(L, VIRGO_LOG_NOTHING, "NOTHING");
  VIRGO_DEFINE_CONSTANT(L, VIRGO_LOG_CRITICAL);
  VIRGO_DEFINE_CONSTANT_ALIAS(L, VIRGO_LOG_CRITICAL, "CRITICAL");
  VIRGO_DEFINE_CONSTANT_ALIAS(L, VIRGO_LOG_CRITICAL, "CRIT");
  VIRGO_DEFINE_CONSTANT(L, VIRGO_LOG_ERRORS);
  VIRGO_DEFINE_CONSTANT_ALIAS(L, VIRGO_LOG_ERRORS, "ERROR");
  VIRGO_DEFINE_CONSTANT_ALIAS(L, VIRGO_LOG_ERRORS, "ERR");
  VIRGO_DEFINE_CONSTANT(L, VIRGO_LOG_WARNINGS);
  VIRGO_DEFINE_CONSTANT_ALIAS(L, VIRGO_LOG_WARNINGS, "WARNING");
  VIRGO_DEFINE_CONSTANT_ALIAS(L, VIRGO_LOG_WARNINGS, "WARN");
  VIRGO_DEFINE_CONSTANT(L, VIRGO_LOG_INFO);
  VIRGO_DEFINE_CONSTANT_ALIAS(L, VIRGO_LOG_INFO, "INFO");
  VIRGO_DEFINE_CONSTANT(L, VIRGO_LOG_DEBUG);
  VIRGO_DEFINE_CONSTANT_ALIAS(L, VIRGO_LOG_DEBUG, "DEBUG");
  VIRGO_DEFINE_CONSTANT_ALIAS(L, VIRGO_LOG_DEBUG, "DBG");
  VIRGO_DEFINE_CONSTANT(L, VIRGO_LOG_EVERYTHING);
  VIRGO_DEFINE_CONSTANT_ALIAS(L, VIRGO_LOG_EVERYTHING, "EVERYTHING");

  return 1;
}
예제 #2
0
int
virgo__lua_paths(lua_State *L)
{
  luaL_openlib(L, "virgo_paths", virgo_paths, 1);
  VIRGO_DEFINE_CONSTANT(L, VIRGO_PATH_CURRENT_EXECUTABLE_PATH);
  VIRGO_DEFINE_CONSTANT(L, VIRGO_PATH_BUNDLE_DIR);
  VIRGO_DEFINE_CONSTANT(L, VIRGO_PATH_EXE_DIR);
  VIRGO_DEFINE_CONSTANT(L, VIRGO_PATH_EXE_DIR_LATEST);
  VIRGO_DEFINE_CONSTANT(L, VIRGO_PATH_PERSISTENT_DIR);
  VIRGO_DEFINE_CONSTANT(L, VIRGO_PATH_TMP_DIR);
  VIRGO_DEFINE_CONSTANT(L, VIRGO_PATH_LIBRARY_DIR);
  VIRGO_DEFINE_CONSTANT(L, VIRGO_PATH_CONFIG_DIR);
  VIRGO_DEFINE_CONSTANT(L, VIRGO_PATH_RUNTIME_DIR);
  VIRGO_DEFINE_CONSTANT(L, VIRGO_PATH_BUNDLE);
  VIRGO_DEFINE_CONSTANT(L, VIRGO_PATH_EXE);
  VIRGO_DEFINE_CONSTANT(L, VIRGO_PATH_DEFAULT_BUNDLE);
  VIRGO_DEFINE_CONSTANT(L, VIRGO_PATH_DEFAULT_EXE);
  return 1;
}