WeBWorK::PG::IO - Functions used by WeBWorK::PG::Translator
for file IO.
This module defines several functions to be shared with a safe compartment by the PG translator. All exported methods are shared.
This is used in processing some of the sample CAPA files and in creating aliases to redirect calls to duplicate problems so that they go to the original problem instead. It is called by includePGproblem.
Usage: includePGtext($str)
Note that the $str
parameter may be a string or a reference to a string.
It reads and evaluates the string in the same way that the Translator evaluates the string in a PG file.
Read the contents of a pg file.
Usage: read_whole_problem_file($filePath)
Don't use for huge files. The file name will have .pg appended to it if it doesn't already end in .pg. This is used in importing additional .pg files as is done in the sample problems translated from CAPA. Returns a reference to a string containing the contents of the file.
Read the contents of a file. Don't use for huge files.
Usage: read_whole_file($filePath)
Usage: fileFromPath($path)
Returns the last segment of the path (i.e. the text after the last forward slash).
Usage: directoryFromPath($path)
Returns the initial segments of the of the path (i.e. the text up to the last forward slash).
Usage: createFile($fileName, $permission, $numgid)
Creates a file with the given name, permission bits, and group ID.
Usage: createDirectory($dirName, $permission, $numgid)
Creates a directory with the given name, permission bits, and group ID.
Usage: remove_tree($dir)
Remove a directory and its contents.
Usage: path_is_readable_subdir($path)
Checks to see if the given path is a sub directory of the directory the caller says we are allowed to read from.
Returns the temporary directory set in the WeBWorK::PG::Environment.
Usage: externalCommand($command)
Returns the path to a requested external command that is defined in the WeBWorK::PG::Environment
.
Usage: AskSage($python, $args)
Executes a sage cell server query via curl and returns the result.