GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — hslua/hslua-module-path at main · hslua/hslua

Expand file tree

/

hslua-module-path

/
Copy path

Directory actions

More options

More options

Directory actions

More options

More options

Latest commit

 

History

History
History
/

hslua-module-path

/
Copy path

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
src/HsLua/Module
src/HsLua/Module
 
 
test
test
 
 
.gitignore
.gitignore
 
 
CHANGELOG.md
CHANGELOG.md
 
 
LICENSE
LICENSE
 
 
README.md
README.md
 
 
hslua-module-path.cabal
hslua-module-path.cabal
 
 

README.md

Outline

hslua-module-path

GitHub CI Hackage Stackage Lts Stackage Nightly MIT license

Lua module to work with file paths.

path

Module for file path manipulations.

separator

The character that separates directories.

search_path_separator

The character that is used to separate the entries in the PATH environment variable.

Functions

directory (filepath)

Get the directory name; move up one level.

Parameters:

filepath
path (string)

Returns:

  • The filepath up to the last directory separator. (string)

filename (filepath)

Get the file name.

Parameters:

filepath
path (string)

Returns:

  • File name part of the input path. (string)

is_absolute (filepath)

Checks whether a path is absolute, i.e. not fixed to a root.

Parameters:

filepath
path (string)

Returns:

  • true iff filepath is an absolute path, false otherwise. (boolean)

is_relative (filepath)

Checks whether a path is relative or fixed to a root.

Parameters:

filepath
path (string)

Returns:

  • true iff filepath is a relative path, false otherwise. (boolean)

join (filepaths)

Join path elements back together by the directory separator.

Parameters:

filepaths
path components (list of strings)

Returns:

  • The joined path. (string)

make_relative (path, root, unsafe)

Contract a filename, based on a relative path. Note that the resulting path will never introduce .. paths, as the presence of symlinks means ../b may not reach a/b if it starts from a/c. For a worked example see this blog post.

Parameters:

path
path to be made relative (string)

root
root path (string)

unsafe
whether to allow .. in the result. (boolean)

Returns:

  • contracted filename (string)

normalize (filepath)

Normalizes a path.

  • // outside of the drive can be made blank
  • / becomes the path.separator
  • ./ -> ’’
  • an empty path becomes .

Parameters:

filepath
path (string)

Returns:

  • The normalized path. (string)

split (filepath)

Splits a path by the directory separator.

Parameters:

filepath
path (string)

Returns:

  • List of all path components. (list of strings)

split_extension (filepath)

Splits the last extension from a file path and returns the parts. The extension, if present, includes the leading separator; if the path has no extension, then the empty string is returned as the extension.

Parameters:

filepath
path (string)

Returns:

  • filepath without extension (string)

  • extension or empty string (string)

split_search_path (search_path)

Takes a string and splits it on the search_path_separator character. Blank items are ignored on Windows, and converted to . on Posix. On Windows path elements are stripped of quotes.

Parameters:

search_path
platform-specific search path (string)

Returns:

  • list of directories in search path (list of strings)
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.