------------------------------------------------------------------------------- | |
-- Operating System Facilities. | |
-- This library is implemented through table os. | |
-- @module os | |
------------------------------------------------------------------------------- | |
-- Returns an approximation of the amount in seconds of CPU time used by | |
-- the program. | |
-- @function [parent=#os] clock | |
-- @return #number the amount in seconds of CPU time used by | |
-- the program. | |
------------------------------------------------------------------------------- | |
-- Returns a string or a table containing date and time, formatted according | |
-- to the given string `format`. | |
-- | |
-- If the `time` argument is present, this is the time to be formatted | |
-- (see the `os.time` function for a description of this value). Otherwise, | |
-- `date` formats the current time. | |
-- | |
-- If `format` starts with '`!`', then the date is formatted in Coordinated | |
-- Universal Time. After this optional character, if `format` is the string | |
-- "`*t`", then `date` returns a table with the following fields: | |
-- | |
-- * `year` (four digits) | |
-- * `month` (1--12) | |
-- * `day` (1--31) | |
-- * `hour` (0--23) | |
-- * `min` (0--59) | |
-- * `sec` (0--61) | |
-- * `wday` (weekday, Sunday is 1) | |
-- * `yday` (day of the year) | |
-- * `isdst` (daylight saving flag, a boolean). | |
-- | |
-- If `format` is not "`*t`", then `date` returns the date as a string, | |
-- formatted according to the same rules as the C function `strftime`. | |
-- When called without arguments, `date` returns a reasonable date and time | |
-- representation that depends on the host system and on the current locale | |
-- (that is, `os.date()` is equivalent to `os.date("%c")`). | |
-- @function [parent=#os] date | |
-- @param #string format format of date. (optional) | |
-- @param #number time time to format. (default value is current time) | |
-- @return #string a formatted string representation of `time`. | |
------------------------------------------------------------------------------- | |
-- Returns the number of seconds from time `t1` to time `t2`. In POSIX, | |
-- Windows, and some other systems, this value is exactly `t2`*-*`t1`. | |
-- @function [parent=#os] difftime | |
-- @param #number t2 | |
-- @param #number t1 | |
-- @return #number the number of seconds from time `t1` to time `t2`. | |
------------------------------------------------------------------------------- | |
-- This function is equivalent to the C function `system`. It passes | |
-- `command` to be executed by an operating system shell. It returns a status | |
-- code, which is system-dependent. If `command` is absent, then it returns | |
-- nonzero if a shell is available and zero otherwise. | |
-- @function [parent=#os] execute | |
-- @param #string command command to be executed. | |
-- @return A status code which is system-dependent. | |
------------------------------------------------------------------------------- | |
-- Calls the C function `exit`, with an optional `code`, to terminate the | |
-- host program. The default value for `code` is the success code. | |
-- @function [parent=#os] exit | |
-- @param #number code an exit code. (default is the success code) | |
------------------------------------------------------------------------------- | |
-- Returns the value of the process environment variable `varname`, or | |
-- nil if the variable is not defined. | |
-- @function [parent=#os] getenv | |
-- @param #string varname an environment variable name. | |
-- @return The value of the process environment variable `varname`, or | |
-- nil if the variable is not defined. | |
------------------------------------------------------------------------------- | |
-- Deletes the file or directory with the given name. Directories must be | |
-- empty to be removed. If this function fails, it returns nil, plus a string | |
-- describing the error. | |
-- @function [parent=#os] remove | |
-- @param filename the path to the file or directory to delete. | |
-- @return #nil, #string an error message if it failed. | |
------------------------------------------------------------------------------- | |
-- Renames file or directory named `oldname` to `newname`. If this function | |
-- fails, it returns nil, plus a string describing the error. | |
-- @function [parent=#os] rename | |
-- @param oldname the path to the file or directory to rename. | |
-- @param newname the new path. | |
-- @return #nil, #string an error message if it failed. | |
------------------------------------------------------------------------------- | |
-- Sets the current locale of the program. `locale` is a string specifying | |
-- a locale; `category` is an optional string describing which category to | |
-- change: `"all"`, `"collate"`, `"ctype"`, `"monetary"`, `"numeric"`, or | |
-- `"time"`; the default category is `"all"`. The function returns the name | |
-- of the new locale, or nil if the request cannot be honored. | |
-- | |
-- If `locale` is the empty string, the current locale is set to an | |
-- implementation-defined native locale. If `locale` is the string "`C`", | |
-- the current locale is set to the standard C locale. | |
-- | |
-- When called with nil as the first argument, this function only returns | |
-- the name of the current locale for the given category. | |
-- @function [parent=#os] setlocale | |
-- @param #string locale a string specifying a locale. | |
-- @param #string category `"all"`, `"collate"`, `"ctype"`, `"monetary"`, `"numeric"`, or | |
-- `"time"`; the default category is `"all"`. | |
-- @return #string the current locale. | |
------------------------------------------------------------------------------- | |
-- Returns the current time when called without arguments, or a time | |
-- representing the date and time specified by the given table. This table | |
-- must have fields `year`, `month`, and `day`, and may have fields `hour`, | |
-- `min`, `sec`, and `isdst` (for a description of these fields, see the | |
-- `os.date` function). | |
-- | |
-- The returned value is a number, whose meaning depends on your system. In | |
-- POSIX, Windows, and some other systems, this number counts the number | |
-- of seconds since some given start time (the "epoch"). In other systems, | |
-- the meaning is not specified, and the number returned by `time` can be | |
-- used only as an argument to `date` and `difftime`. | |
-- @function [parent=#os] time | |
-- @param #table table a table which describes a date. | |
-- @return #number a number meaning a date. | |
------------------------------------------------------------------------------- | |
-- Returns a string with a file name that can be used for a temporary | |
-- file. The file must be explicitly opened before its use and explicitly | |
-- removed when no longer needed. | |
-- | |
-- On some systems (POSIX), this function also creates a file with that | |
-- name, to avoid security risks. (Someone else might create the file with | |
-- wrong permissions in the time between getting the name and creating the | |
-- file.) You still have to open the file to use it and to remove it (even | |
-- if you do not use it). | |
-- | |
-- When possible, you may prefer to use `io.tmpfile`, which automatically | |
-- removes the file when the program ends. | |
-- @function [parent=#os] tmpname | |
-- @return #string a string with a file name that can be used for a temporary file. | |
return nil |