--- LuaFileSystem is a Lua library developed to complement the set of functions -- related to file systems offered by the standard Lua distribution. -- LuaFileSystem offers a portable way to access the underlying directory -- structure and file attributes. module "lfs" --- Returns a table with the file attributes corresponding to -- <code>filepath</code> (or <code>nil</code> followed by an error message -- in case of error). -- If the second optional argument is given, then only the value of the -- named attribute is returned (this use is equivalent to -- <code>lfs.attributes(filepath).aname</code>, but the table is not created -- and only one attribute is retrieved from the O.S.). -- The attributes are described as follows; -- attribute <code>mode</code> is a string, all the others are numbers, -- and the time related attributes use the same time reference of -- <a href="http://www.lua.org/manual/5.0/manual.html#5.7"><code>os.time</code></a>. function attributes (filepath, aname) --- Changes the current working directory to the given -- <code>path</code>.<br /> -- Returns <code>true</code> in case of success or <code>nil</code> plus an -- error string. function chdir (path) --- Returns a string with the current working directory or <code>nil</code> -- plus an error string. function currentdir () --- Lua iterator over the entries of a given directory. -- Each time the iterator is called it returns a string with an entry of the -- directory; <code>nil</code> is returned when there is no more entries. -- Raises an error if <code>path</code> is not a directory. function dir (path) --- Locks a file or a part of it. This function works on <em>open files</em>; the -- file handle should be specified as the first argument. -- The string <code>mode</code> could be either -- <code>r</code> (for a read/shared lock) or <code>w</code> (for a -- write/exclusive lock). The optional arguments <code>start</code> -- and <code>length</code> can be used to specify a starting point and -- its length; both should be numbers.<br /> -- Returns <code>true</code> if the operation was successful; in -- case of error, it returns <code>nil</code> plus an error string. function lock (filehandle, mode, start, length) --- Creates a new directory. The argument is the name of the new -- directory.<br /> -- Returns <code>true</code> if the operation was successful; -- in case of error, it returns <code>nil</code> plus an error string. function mkdir (dirname) --- Removes an existing directory. The argument is the name of the directory.<br /> -- Returns <code>true</code> if the operation was successful; -- in case of error, it returns <code>nil</code> plus an error string. function rmdir (dirname) --- Set access and modification times of a file. This function is -- a bind to <code>utime</code> function. The first argument is the -- filename, the second argument (<code>atime</code>) is the access time, -- and the third argument (<code>mtime</code>) is the modification time. -- Both times are provided in seconds (which should be generated with -- Lua standard function <code>os.date</code>). -- If the modification time is omitted, the access time provided is used; -- if both times are omitted, the current time is used.<br /> -- Returns <code>true</code> if the operation was successful; -- in case of error, it returns <code>nil</code> plus an error string. function touch (filepath, atime, mtime) --- Unlocks a file or a part of it. This function works on -- <em>open files</em>; the file handle should be specified as the first -- argument. The optional arguments <code>start</code> and -- <code>length</code> can be used to specify a starting point and its -- length; both should be numbers.<br /> -- Returns <code>true</code> if the operation was successful; -- in case of error, it returns <code>nil</code> plus an error string. function unlock (filehandle, start, length)