Reference

ScriptCommand(3cc)

This class holds the bound keyword set for a given Bayonne style script interpreter.Bayonne script keyword binding tables and compiler constants.

NAME

ScriptCommand - This class holds the bound keyword set for a given Bayonne style script interpreter.Bayonne script keyword binding tables and compiler constants.

SYNOPSIS

#include <script.h>

Public Member Functions

Method getHandler (const char *keyword)
Get the method handler associated with a given keyword. char * check (char *command, Line *line, ScriptImage *img)
Check keyword syntax. virtual unsigned getTrapId (const char *trap)
Get the trap id number associated with a trap name. virtual unsigned long getTrapDefault (void)
Get the mask bits for the default script. virtual unsigned long getTrapHandler (Name *scr)
Get the mask bits for a trap 'handler'. virtual unsigned long getTrapMask (unsigned id)
Get a trap mask for a given identifer. virtual unsigned long getTrapModifier (const char *trapname)
A helper method for the compiler. virtual unsigned long getTrapMask (const char *trapname)
A helper method for the compiler used specifically for '^' trap subsection requests. char * chkIgnore (Line *line, ScriptImage *img)
Default compiler syntax to accept any syntax. char * chkModule (Line *line, ScriptImage *img)
Module based script checker. char * chkUse (Line *line, ScriptImage *img)
Performs DSO load phase for USE modules. char * chkHasModify (Line *line, ScriptImage *img)
A check used by 'inc' and 'dec'. char * chkHasVars (Line *line, ScriptImage *img)
Script compiler syntax check for certain variable using statements such as 'clear'. char * chkHasList (Line *line, ScriptImage *img)
Script compiler syntax check for assignment statements such as 'set', 'for', etc. char * chkNoArgs (Line *line, ScriptImage *img)
Script compiler syntax check for commands that require no arguments to be present. char * chkHasArgs (Line *line, ScriptImage *img)
Script compiler syntax check for commands that require one or more arguments to be present. void load (Script::Define *keywords)
Load a set of keywords into the system keyword table. int trap (const char *name)
Add a trap handler symbolic identity to the keyword table. int getCount (void)
Get count of active traps. virtual char * check (Check chk, Line *line, ScriptImage *img)
Perform compile time check of a specified symbol. ScriptCommand ()
Load a keydata entry for compile-time constants and bind the default ScriptInterp base class methods. virtual int mapicmp (const char *s1, const char *s2)
virtual int mapnicmp (const char *s1, const char *s2, size_t n)

Friends

class ScriptImage
class ScriptInterp
class ScriptModule

Detailed Description

This class holds the bound keyword set for a given Bayonne style script interpreter.Bayonne script keyword binding tables and compiler constants.

Application specific dialects are created by deriving a application specific version of ScriptCommand which then binds application specific keywords and associated methods in an application derived ScriptInterp which are typecast to (scriptmethod_t).

Author:

David Sugar <[email protected]>

Constructor & Destructor Documentation

ScriptCommand::ScriptCommand ()

Load a keydata entry for compile-time constants and bind the default ScriptInterp base class methods.

This class is never used alone, so no public constructor is provided.

Parameters:

keydata entry for constants.

Member Function Documentation

virtual char* ScriptCommand::check (Check chk, Line * line, ScriptImage * img) [inline, virtual]

Perform compile time check of a specified symbol.

Returns:

syntax error message string.

Parameters:

line pointer.

char* ScriptCommand::check (char * command, Line * line, ScriptImage * img)

Check keyword syntax.

Returns:

syntax error string or NULL.

Parameters:

name of keyword to check.
hook to compiler source.

char* ScriptCommand::chkHasArgs (Line * line, ScriptImage * img)

Script compiler syntax check for commands that require one or more arguments to be present.

Returns:

syntax error message string or NULL.

Parameters:

line statement.

char* ScriptCommand::chkHasList (Line * line, ScriptImage * img)

Script compiler syntax check for assignment statements such as 'set', 'for', etc.

Returns:

syntax error message string or NULL.

Parameters:

line statement.

char* ScriptCommand::chkHasModify (Line * line, ScriptImage * img)

A check used by 'inc' and 'dec'.

Returns:

synxtax error message string or NULL.

Parameters:

line statement.

char* ScriptCommand::chkHasVars (Line * line, ScriptImage * img)

Script compiler syntax check for certain variable using statements such as 'clear'.

Assumes list of valid variable arguments.

char* ScriptCommand::chkNoArgs (Line * line, ScriptImage * img)

Script compiler syntax check for commands that require no arguments to be present.

Returns:

syntax error message string or NULL.

Parameters:

line statement.

int ScriptCommand::getCount (void) [inline]

Get count of active traps.

Returns:

count of active trap identifiers.

Method ScriptCommand::getHandler (const char * keyword)

Get the method handler associated with a given keyword.

This is used by ScriptImage when compiling.

Parameters:

keyword to search for.

Returns:

method handler to execute for this keyword.

virtual unsigned long ScriptCommand::getTrapDefault (void) [inline, virtual]

Get the mask bits for the default script.

Returns:

trap mask to use.

virtual unsigned long ScriptCommand::getTrapHandler (Name * scr) [inline, virtual]

Get the mask bits for a trap 'handler'.

Returns:

trap mask to use.

virtual unsigned ScriptCommand::getTrapId (const char * trap) [virtual]

Get the trap id number associated with a trap name.

Returns:

trap id number, 0 (exit) if invalid.

Parameters:

name of trap identifier.

virtual unsigned long ScriptCommand::getTrapMask (const char * trapname) [virtual]

A helper method for the compiler used specifically for '^' trap subsection requests.

These will occasionally carry different attribute settings.

Parameters:

name of trap identifier.

Returns:

bit shifted mask or 0 if invalid.

virtual unsigned long ScriptCommand::getTrapMask (unsigned id) [virtual]

Get a trap mask for a given identifer.

This is a virtual since some derived handlers may manipulate mask bits.

Returns:

signal mask.

Parameters:

identifier.

virtual unsigned long ScriptCommand::getTrapModifier (const char * trapname) [inline, virtual]

A helper method for the compiler.

Converts a named trap into it's bit shifted mask. By making it a virtual, derived dialects can add 'aliases' to default trap names.

Parameters:

name of trap identifier.

Returns:

bit shifted mask or 0 if invalid.

void ScriptCommand::load (Script::Define * keywords)

Load a set of keywords into the system keyword table.

This provides a convenient method of initializing and adding to the keyword indexes.

Parameters:

keyword entries to load.

int ScriptCommand::trap (const char * name)

Add a trap handler symbolic identity to the keyword table.

These are used to handle signal mask coercion and event branch points in the compiler.

Parameters:

requested trap name.

Returns:

assigned id number for the trap.

Author

Generated automatically by Doxygen for ccScript from the source code.