man ScriptImage (Fonctions bibliothèques) - A derivable class to hold compiled script images for active processes. Script compiler image set.

NAME

ScriptImage - A derivable class to hold compiled script images for active processes. Script compiler image set.

SYNOPSIS



#include <script.h>

Inherits Script.

Public Methods

virtual Name * getScript (const char *name)

Fetch named script. virtual Name * dupScript (const char *name, const char *target)

Duplicate script if needed. unsigned gather (const char *suffix, Name **array, unsigned size)

Fetch list of relational scripts. std::istream * getSource (void)

Used by embedded interpreters to fetch script from the current source file.

Protected Methods

char * getToken (char **pre=NULL)

Method getHandler (const char *keyword)

Get the interpreter method pointer for a given keyword. ScriptImage (ScriptCommand *cmdset, const char *symset)

Construct a new working image. void purge (void)

Purge and reload the script image workspace. Name * include (const char *scrfile)

A method to invoke the script compiler to include a script only if it has not been included already. int compile (const char *scrfile)

The script compiler itself. int compile (const char *scrfile, char *name)

Compile a script from disk and give it a different internal 'name' as passed. int compile (std::istream *str, char *name, const char *scrname=NULL)

Compile an open stream object into a script. void commit (void)

Used in the derived constructor to 'commit' the current image for new processes. virtual bool preProcess (const char *directive, Name *script)

used to create dialect specific pre-precessor directives. virtual const char * getDefined (const char *token)

Used to process '$const' inserts. void load (Initial *ilist)

Used by a derived constructor to load an initialization list. void initial (const char *keyword, const char *value, unsigned size=0)

Used to load a single initialization list entry.

Protected Attributes

std::ifstream scrSource

std::istream * scrStream

ScriptCommand * cmds

int refcount

Name * index [37]

char * buffer

unsigned bufsize

char * bp

bool quote

unsigned paren

Mutex duplock

ScriptImage::InitialList * ilist

Friends

class ScriptInterp

class ScriptModule

DETAILED DESCRIPTION

A derivable class to hold compiled script images for active processes. Script compiler image set.

This includes the script image compiler itself. Typically, a script is compiled one file at a time from a directory, and the committed, during the constructor in a derived class.

Author: David Sugar <dyfet@ostel.com>.

CONSTRUCTOR & DESTRUCTOR DOCUMENTATION

ScriptImage::ScriptImage (ScriptCommand * cmdset, const char * symset) [protected]

Construct a new working image.

This must be derived to an application specific compiler that can scan directories and invoke the compiler as needed.

Parameters:

cmdset
of keyword table object used.

MEMBER FUNCTION DOCUMENTATION

void ScriptImage::commit (void) [protected]

Used in the derived constructor to 'commit' the current image for new processes.

This is usually the last statement in the derived constructor.

int ScriptImage::compile (std::istream * str, char * name, const char * scrname = NULL) [protected]

Compile an open stream object into a script.

Returns: lines of script compiled.

Parameters:

stream
object to use.
name
of script save under.

int ScriptImage::compile (const char * scrfile, char * name) [protected]

Compile a script from disk and give it a different internal 'name' as passed.

Returns: lines of script compiled.

Parameters:

name
of script file to compile.
name
of script to save under.
test
if script already loaded.

int ScriptImage::compile (const char * scrfile) [protected]

The script compiler itself.

This linearly compiles a Bayonne script file that is specified. Normally used along with a dir scanner in the constructor.

Returns: lines of script compiled.

Parameters:

name
of script file to compile.

virtual Name* ScriptImage::dupScript (const char * name, const char * target) [virtual]

Duplicate script if needed.

Parameters:

script
name to dup.
target
name to dup as.

Returns: script or NULL.

unsigned ScriptImage::gather (const char * suffix, Name ** array, unsigned size)

Fetch list of relational scripts.

Parameters:

suffix.
index.
max
entries.

Returns: count of entries found.

virtual const char* ScriptImage::getDefined (const char * token) [inline, protected, virtual]

Used to process '$const' inserts.

Returns: string if found.

Parameters:

script
token being substituted.

Method ScriptImage::getHandler (const char * keyword) [inline, protected]

Get the interpreter method pointer for a given keyword.

Returns: method handler.

Parameters:

keyword
to search.

virtual Name* ScriptImage::getScript (const char * name) [virtual]

Fetch named script.

Parameters:

script
name to find.

Returns: script or NULL.

std::istream* ScriptImage::getSource (void) [inline]

Used by embedded interpreters to fetch script from the current source file.

Returns: reference to source file stream.

Name* ScriptImage::include (const char * scrfile) [protected]

A method to invoke the script compiler to include a script only if it has not been included already.

Returns: named script object.

Parameters:

name
of script file to compile.

void ScriptImage::initial (const char * keyword, const char * value, unsigned size = 0) [protected]

Used to load a single initialization list entry.

Parameters:

keyword
value
size

void ScriptImage::load (Initial * ilist) [protected]

Used by a derived constructor to load an initialization list.

Parameters:

initialization
list.

virtual bool ScriptImage::preProcess (const char * directive, Name * script) [inline, protected, virtual]

used to create dialect specific pre-precessor directives.

Returns: true if directive claimed.

Parameters:

directive
script
object being built

AUTHOR

Generated automatically by Doxygen for ccScript from the source code.