1.40Functions

CurrentTime

Returns the current system local time as a TimeStamp instance.

CurrentTime()
ReturnA new TimeStamp instance.

Returns the current system local time as a TimeStamp instance. The function can never fail.

ParseRFC2822

Parses a RFC2822 formatted date and returns a timestamp instance.

ParseRFC2822()
ReturnA valid TimeStamp instance or nil if the format is invalid.

See also: TimeStamp.

attributes

Returns a dictionary containing annotation attributes of the current module.

attributes()
ReturnNil if the current module has no attributes, or a string-indexed dictionary.

See also: Function, Class, Object.

describe

Returns the deep contents of an item on a string representation.

describe( item, [depth],[maxLen] )
item The item to be inspected.
depth Maximum inspect depth.
maxLen Limit the display size of possibly very long items as i.e. strings or membufs.

This function returns a string containing a representation of the given item. If the item is deep (an array, an instance, a dictionary) the contents are also passed through this function.

This function traverses arrays and items deeply; there isn't any protection against circular references, which may cause endless loop. However, the default maximum depth is 3, which is a good depth for debugging (goes deep, but doesn't dig beyond average interesting points). Set to -1 to have infinite depth.

By default, only the first 60 characters of strings and elements of membufs are displayed. You may change this default by providing a maxLen parameter.

You may create personalized inspect functions using forward bindings, like the following:


   compactDescribe = .[inspect depth|1 maxLen|15]

include

Dynamically loads a module as a plugin.

include( file, [inputEnc],[path],[symDict] )
file The relative filename of the module.
inputEnc Input encoding.
path A string of ';' separated search paths.
symDict Symbols to be queried (or nil).
Raise
IoError if the module cannot be found or loaded.

A module indicated by filename is compiled, loaded and linked in the running Virtual Machine. The inclusion is relative to the current path, be it set in the script, in the current embedding application or in the falcon command line interpreter. It is possible to use a path relative to the current script path by using the scriptPath variable.

If a dictionary of symbols to be queried is not provided, the module is loaded and its main code, if present, is executed.

If symDict is provided, its keys are strings which refer to symbol names to be searched in the loaded module. If present, the entry are filled with symbols coming from the loaded module. When symDict is provided, the linked module won't have its main code executed (it is possible to execute it at a later time adding "main" to the searched symbols). If a symbol is not found, its entry in the dictionary will be set to nil. When loaded this way, the export requests in the loaded module are not honored (import/from semantic).

The compiler Feather module provides a more complete interface to dynamic load and compilation, but this minimal dynamic load support is provided at base level for flexibility.

readURI

Reads fully data from a given file or URI source.

readURI( uri, [encoding] )
uri The item to be read (URI or string)
encoding The encoding.
ReturnA string containing the whole contents of the given file.
Raise
IoError in case of read error.

This function reads as efficiently as possible a file from the given source. If encoding isn't given, the file is read as binary data.

Provided encodings are:

Note: The maximum size of the data that can be read is limited to 2 Gigabytes.

writeURI

Writes fully data to a given file or URI source.

writeURI( uri, data, [encoding] )
uri The item to be read (URI or string)
data A string or membuf containing the data to be written.
encoding The encoding.
Raise
IoError in case of write errors.

This function writes all the data contained in the string or memory buffer passed in the data parameter into the uri output resource.

If encoding is not given, the data is treated as binary data and written as-is.

Provided encodings are:

Made with http://www.falconpl.org