Bayonne2 / Common C++ 2 Framework
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Data Structures | Public Types | Public Member Functions | Static Public Member Functions | Data Fields | Static Public Attributes | Protected Member Functions | Protected Attributes | Static Protected Attributes | Friends
ost::ScriptInterp Class Reference

#include <script3.h>

Inheritance diagram for ost::ScriptInterp:
Inheritance graph
[legend]
Collaboration diagram for ost::ScriptInterp:
Collaboration graph
[legend]

Data Structures

class  Frame
 

Public Types

enum  scrAccess {
  scrPUBLIC, scrPROTECTED, scrPRIVATE, scrFUNCTION,
  scrLOCAL
}
 
typedef enum scrAccess scrAccess
 
enum  symType {
  symNORMAL = 0, symCONST, symDYNAMIC, symFIFO,
  symSEQUENCE, symSTACK, symCOUNTER, symPOINTER,
  symREF, symARRAY, symASSOC, symINITIAL,
  symNUMBER, symLOCK, symPROPERTY, symORIGINAL,
  symMODIFIED, symTIMER, symBOOL
}
 
typedef enum symType symType
 
typedef bool(ScriptInterp::* Method )(void)
 
typedef const char
*(ScriptCommand::* 
Check )(Line *line, ScriptImage *img)
 
typedef bool(* Cond )(ScriptInterp *interp, const char *v)
 
typedef long(* Function )(long *args, unsigned prec)
 
typedef const char *(* Meta )(ScriptInterp *interp, const char *token)
 
typedef const char *(* Parse )(ScriptCompiler *img, const char *token)
 
typedef void(* Init )(void)
 
typedef struct ost::Script::_symbol Symbol
 
typedef struct ost::Script::_array Array
 

Public Member Functions

long getIntValue (const char *text, unsigned prec, ScriptProperty *property=NULL)
 
int numericExpression (long *list, int max, unsigned prec, ScriptProperty *property=NULL)
 
bool conditionalExpression (void)
 
bool conditional (void)
 
virtual unsigned getId (void)
 
unsigned long getSequence (void)
 
virtual const char * getLogname (void)
 
virtual ScriptInterpgetInterp (const char *id)
 
virtual const char * getExternal (const char *opt)
 
ScriptImagegetImage (void)
 
const char * getMember (void)
 
const char * getKeyword (const char *kw)
 
const char * getKeyoption (const char *kw)
 
const char * getValue (const char *def=NULL)
 
const char * getOption (const char *def=NULL)
 
const char * hasOption (void)
 
const char * getContent (const char *opt)
 
const char * getSymContent (const char *opt)
 
SymbolgetKeysymbol (const char *kw, unsigned size=0)
 
SymbolgetSymbol (unsigned short size=0)
 
char getPackToken (void)
 
FramegetFrame (void)
 
LinegetLine (void)
 
void setFrame (void)
 
NamegetName (void)
 
bool getTrace (void)
 
bool execute (Method method)
 Runtime execution of script handler. More...
 
virtual void logmissing (const char *id, const char *level="undefined", const char *group="symbol")
 
virtual void logerror (const char *msg, const char *name=NULL)
 
SymbolmapSymbol (const char *id, unsigned short=0)
 
SymbolmapDirect (const char *id, unsigned short=0)
 
bool setNumber (const char *id, const char *value=NULL, unsigned dec=0)
 
bool setSymbol (const char *id, const char *value=NULL, unsigned short size=0)
 
bool setConst (const char *id, const char *value)
 
bool putSymbol (const char *id, const char *value, unsigned short size=0)
 
bool getSymbol (const char *id, char *buffer, unsigned short max)
 
bool catSymbol (const char *id, const char *value, unsigned short size=0)
 
const char * getSymbol (const char *id)
 
NamegetScript (const char *name)
 
 ScriptInterp ()
 
bool step (void)
 
bool attach (ScriptCommand *cmd, const char *scrname)
 
void detach (void)
 
void attach (ScriptCommand *cmd, ScriptImage *img, Name *scr)
 
void release (void)
 Release any acquired lock... More...
 
bool signal (const char *name)
 Signals are used during "delayed" execution steps when a signal event has occured aynchronously with the execution of a script controlled state event handler. More...
 
bool signal (unsigned id)
 Signals can be referenced by numeric id as well as by symbolic name. More...
 
bool done (void)
 
timeout_t getTimeout (void)
 
virtual void branching (void)
 A virtual holding a branch conditional member. More...
 
bool isRunning (void)
 
bool isExiting (void)
 
char * getTemp (void)
 
unsigned getTempSize (void)
 
void nameMutex (const char *name)
 Enable setting of mutex name for deadlock debug. More...
 
void enterMutex (void)
 Entering a Mutex locks the mutex for the current thread. More...
 
void enter (void)
 Future abi will use enter/leave/test members. More...
 
void leave (void)
 Future abi will use enter/leave/test members. More...
 
bool test (void)
 Future abi will use enter/leave/test members. More...
 
bool tryEnterMutex (void)
 Tries to lock the mutex for the current thread. More...
 
void leaveMutex (void)
 Leaving a mutex frees that mutex for use by another thread. More...
 
const char * cstring (const char *str)
 
unsigned gathertype (Symbol **idx, unsigned max, const char *prefix, symType group)
 
unsigned gather (Symbol **idx, unsigned max, const char *prefix, const char *suffix)
 
Symbolfind (const char *id, unsigned short size=0)
 
Symbolmake (const char *id, unsigned short size)
 
SymbolsetReference (const char *id, Symbol *target)
 
int getPages (void)
 Return the total number of pages that have been allocated for this memory pool. More...
 

Static Public Member Functions

static long getRealValue (double val, unsigned prec)
 
static double getDouble (long value, unsigned prec)
 
static long getInteger (long value, unsigned prec)
 
static long getTens (unsigned prec)
 
static void setDebug (bool mode)
 Enable or disable deadlock debugging. More...
 
static bool isScript (Name *scr)
 
static bool isSymbol (const char *id)
 
static bool use (const char *name)
 
static unsigned getIndex (const char *id)
 
static Symbolderef (Symbol *sym)
 
static bool commit (Symbol *sym, const char *value)
 
static bool append (Symbol *sym, const char *value)
 
static bool symindex (Symbol *sym, short offset)
 
static const char * extract (Symbol *sym)
 
static unsigned count (Symbol *sym)
 
static unsigned storage (Symbol *sym)
 
static void clear (Symbol *sym)
 
static void addFunction (const char *name, unsigned count, Function i)
 
static void addConditional (const char *name, Cond test)
 
static bool isPrivate (Name *scr)
 
static bool isFunction (Name *scr)
 

Data Fields

class __EXPORT Line
 
class __EXPORT Name
 

Static Public Attributes

static size_t pagesize
 
static bool fastStart
 
static bool useBigmem
 
static unsigned fastStepping
 
static unsigned autoStepping
 
static unsigned symsize
 
static unsigned symlimit
 
static char decimal
 
static bool use_definitions
 
static bool use_macros
 
static bool use_prefix
 
static bool use_merge
 
static bool use_funcs
 
static const char * plugins
 
static const char * altplugins
 
static const char * access_user
 
static const char * access_pass
 
static const char * access_host
 
static bool exec_funcs
 
static const char * exec_extensions
 
static const char * exec_token
 
static const char * exec_prefix
 
static const char * exit_token
 
static const char * apps_extensions
 
static const char * apps_prefix
 
static const char * etc_prefix
 
static const char * var_prefix
 
static const char * log_prefix
 

Protected Member Functions

virtual ScriptSymbolsgetSymbols (const char *id)
 
ScriptSymbolsgetLocal (void)
 
void initRuntime (Name *name)
 Initialize execution environment for a script. More...
 
virtual void initialize (void)
 New virtual to initialize script environment syms before running init sections. More...
 
bool push (void)
 Attempt to push a value onto the stack. More...
 
bool pull (void)
 Attempt to recall a previous stack level. More...
 
void clearStack (void)
 Clear the stack of local loops or recursion for branching. More...
 
void advance (void)
 Advance program to the next script statement. More...
 
void skip (void)
 Skip line without checking or setting updates. More...
 
void error (const char *error)
 Set error variable and advance to either the error handler or next script statement. More...
 
bool scriptEvent (const char *name, bool inhereted=true)
 Events reference to named @event handlers which have been attached to a script. More...
 
void gotoEvent (NamedEvent *event)
 Branch to a selected event record immediately. More...
 
void trap (unsigned id)
 Set the execution interpreter to a trap identifier. More...
 
bool tryCatch (const char *id)
 Tries a catch handler... More...
 
void trap (const char *name)
 Select trap by symbolic name and execute if found, else advance to next script step (unless exit trap). More...
 
virtual bool isLocked (const char *id)
 
virtual const char * remapLocal (void)
 
virtual bool exit (void)
 
virtual void enterThread (ScriptThread *thread)
 
virtual void exitThread (const char *msg)
 
virtual void waitThread (void)
 
virtual void startThread (void)
 
bool eventThread (const char *evt, bool flag=true)
 
bool redirect (const char *scr)
 
void ripple (void)
 
bool redirect (bool evflag)
 
unsigned long getMask (void)
 
void purge (void)
 
virtual void * first (size_t size)
 Allocate first workspace from paged memory. More...
 
char * first (char *str)
 Allocate a string from the memory pager pool and copy the string into it's new memory area. More...
 
virtual void * alloc (size_t size)
 Allocate memory from either the currently active page, or allocate a new page for the object. More...
 
char * alloc (const char *str)
 Allocate a string from the memory pager pool and copy the string inti it's new memory area. More...
 
void clean (void)
 Clean for memory cleanup before exiting. More...
 

Protected Attributes

Mutexlock
 
ScriptCommandcmd
 
ScriptImageimage
 
ScriptInterpsession
 
ScriptThreadthread
 
Frame frame [32]
 
char * temps [16]
 
unsigned tempidx
 
unsigned stack
 
bool initialized
 
bool trace
 
bool exiting
 
bool updated
 
unsigned long sequence
 
char logname [32]
 
Symbolindex [KEYDATA_INDEX_SIZE+1]
 

Static Protected Attributes

static Testtest
 
static Funifun
 

Friends

class __EXPORT ScriptThread
 
class __EXPORT ScriptCommand
 
class __EXPORT ScriptBinder
 

Detailed Description

Definition at line 1275 of file script3.h.

Member Typedef Documentation

typedef struct ost::Script::_array ost::Script::Array
inherited
typedef const char*(ScriptCommand::* ost::Script::Check)(Line *line, ScriptImage *img)
inherited

Definition at line 106 of file script3.h.

typedef bool(* ost::Script::Cond)(ScriptInterp *interp, const char *v)
inherited

Definition at line 107 of file script3.h.

typedef long(* ost::Script::Function)(long *args, unsigned prec)
inherited

Definition at line 108 of file script3.h.

typedef void(* ost::Script::Init)(void)
inherited

Definition at line 111 of file script3.h.

typedef const char*(* ost::Script::Meta)(ScriptInterp *interp, const char *token)
inherited

Definition at line 109 of file script3.h.

typedef bool(ScriptInterp::* ost::Script::Method)(void)
inherited

Definition at line 105 of file script3.h.

typedef const char*(* ost::Script::Parse)(ScriptCompiler *img, const char *token)
inherited

Definition at line 110 of file script3.h.

typedef enum scrAccess ost::Script::scrAccess
inherited

Definition at line 121 of file script3.h.

typedef struct ost::Script::_symbol ost::Script::Symbol
inherited
typedef enum symType ost::Script::symType
inherited

Definition at line 145 of file script3.h.

Member Enumeration Documentation

enum ost::Script::scrAccess
inherited
Enumerator
scrPUBLIC 
scrPROTECTED 
scrPRIVATE 
scrFUNCTION 
scrLOCAL 

Definition at line 113 of file script3.h.

enum ost::Script::symType
inherited
Enumerator
symNORMAL 
symCONST 
symDYNAMIC 
symFIFO 
symSEQUENCE 
symSTACK 
symCOUNTER 
symPOINTER 
symREF 
symARRAY 
symASSOC 
symINITIAL 
symNUMBER 
symLOCK 
symPROPERTY 
symORIGINAL 
symMODIFIED 
symTIMER 
symBOOL 

Definition at line 123 of file script3.h.

Constructor & Destructor Documentation

ost::ScriptInterp::ScriptInterp ( )

Member Function Documentation

static void ost::Script::addConditional ( const char *  name,
Cond  test 
)
staticinherited
static void ost::Script::addFunction ( const char *  name,
unsigned  count,
Function  i 
)
staticinherited
void ost::ScriptInterp::advance ( void  )
protected

Advance program to the next script statement.

virtual void* MemPager::alloc ( size_t  size)
protectedvirtualinherited

Allocate memory from either the currently active page, or allocate a new page for the object.

Parameters
sizesize of memory to allocate.
Returns
pointer to allocated memory.

Reimplemented in SharedMemPager.

char* MemPager::alloc ( const char *  str)
protectedinherited

Allocate a string from the memory pager pool and copy the string inti it's new memory area.

This checks only the last active page for available space before allocating a new page.

Parameters
strstring to allocate and copy into paged memory pool.
Returns
copy of string from allocated memory.
static bool ost::Script::append ( Symbol sym,
const char *  value 
)
staticinherited
bool ost::ScriptInterp::attach ( ScriptCommand cmd,
const char *  scrname 
)
void ost::ScriptInterp::attach ( ScriptCommand cmd,
ScriptImage img,
Name scr 
)
virtual void ost::ScriptInterp::branching ( void  )
virtual

A virtual holding a branch conditional member.

This may be invoked typically from goto or restart. Can be used to check contextual changes.

Reimplemented in ost::BayonneSession.

bool ost::ScriptInterp::catSymbol ( const char *  id,
const char *  value,
unsigned short  size = 0 
)
void MemPager::clean ( void  )
protectedinherited

Clean for memory cleanup before exiting.

static void ost::Script::clear ( Symbol sym)
staticinherited
void ost::ScriptInterp::clearStack ( void  )
protected

Clear the stack of local loops or recursion for branching.

static bool ost::Script::commit ( Symbol sym,
const char *  value 
)
staticinherited
bool ost::ScriptInterp::conditional ( void  )
bool ost::ScriptInterp::conditionalExpression ( void  )
static unsigned ost::Script::count ( Symbol sym)
staticinherited
const char* ost::ScriptSymbols::cstring ( const char *  str)
inlineinherited

Definition at line 321 of file script3.h.

static Symbol* ost::Script::deref ( Symbol sym)
staticinherited
void ost::ScriptInterp::detach ( void  )
bool ost::ScriptInterp::done ( void  )
void Mutex::enter ( void  )
inlineinherited

Future abi will use enter/leave/test members.

Definition at line 263 of file thread.h.

void Mutex::enterMutex ( void  )
inherited

Entering a Mutex locks the mutex for the current thread.

This also can be done using the ENTER_CRITICAL macro or by using the ++ operator on a mutex.

See Also
leaveMutex
virtual void ost::ScriptInterp::enterThread ( ScriptThread thread)
protectedvirtual

Reimplemented in ost::BayonneSession.

void ost::ScriptInterp::error ( const char *  error)
protected

Set error variable and advance to either the error handler or next script statement.

Parameters
errormessage.
bool ost::ScriptInterp::eventThread ( const char *  evt,
bool  flag = true 
)
protected
bool ost::ScriptInterp::execute ( Method  method)

Runtime execution of script handler.

This can be called in the current or derived class to invoke extensible methods.

Returns
true if immediately ready for next step.
Parameters
methodderived method member to call.
virtual bool ost::ScriptInterp::exit ( void  )
protectedvirtual

Reimplemented in ost::BayonneSession.

virtual void ost::ScriptInterp::exitThread ( const char *  msg)
protectedvirtual

Reimplemented in ost::BayonneSession.

static const char* ost::Script::extract ( Symbol sym)
staticinherited
Symbol* ost::ScriptSymbols::find ( const char *  id,
unsigned short  size = 0 
)
inherited
virtual void* MemPager::first ( size_t  size)
protectedvirtualinherited

Allocate first workspace from paged memory.

This method scans all currently allocated blocks for available space before adding new pages and hence is both slower and more efficient.

Parameters
sizesize of memory to allocate.
Returns
pointer to allocated memory.

Reimplemented in SharedMemPager.

char* MemPager::first ( char *  str)
protectedinherited

Allocate a string from the memory pager pool and copy the string into it's new memory area.

This method allocates memory by first searching for an available page, and then allocating a new page if no space is found.

Parameters
strstring to allocate and copy into paged memory pool.
Returns
copy of string from allocated memory.
unsigned ost::ScriptSymbols::gather ( Symbol **  idx,
unsigned  max,
const char *  prefix,
const char *  suffix 
)
inherited
unsigned ost::ScriptSymbols::gathertype ( Symbol **  idx,
unsigned  max,
const char *  prefix,
symType  group 
)
inherited
const char* ost::ScriptInterp::getContent ( const char *  opt)
static double ost::ScriptInterp::getDouble ( long  value,
unsigned  prec 
)
static
virtual const char* ost::ScriptInterp::getExternal ( const char *  opt)
virtual

Reimplemented in ost::BayonneSession.

Frame* ost::ScriptInterp::getFrame ( void  )
inline

Definition at line 1369 of file script3.h.

virtual unsigned ost::ScriptInterp::getId ( void  )
virtual

Reimplemented in ost::BayonneSession.

ScriptImage* ost::ScriptInterp::getImage ( void  )
inline

Definition at line 1335 of file script3.h.

static unsigned ost::Script::getIndex ( const char *  id)
staticinherited
static long ost::ScriptInterp::getInteger ( long  value,
unsigned  prec 
)
static
virtual ScriptInterp* ost::ScriptInterp::getInterp ( const char *  id)
virtual

Reimplemented in ost::BayonneSession.

long ost::ScriptInterp::getIntValue ( const char *  text,
unsigned  prec,
ScriptProperty property = NULL 
)
const char* ost::ScriptInterp::getKeyoption ( const char *  kw)
Symbol* ost::ScriptInterp::getKeysymbol ( const char *  kw,
unsigned  size = 0 
)
const char* ost::ScriptInterp::getKeyword ( const char *  kw)
Line* ost::ScriptInterp::getLine ( void  )
inline

Definition at line 1372 of file script3.h.

ScriptSymbols* ost::ScriptInterp::getLocal ( void  )
protected
virtual const char* ost::ScriptInterp::getLogname ( void  )
inlinevirtual

Definition at line 1328 of file script3.h.

unsigned long ost::ScriptInterp::getMask ( void  )
protected
const char* ost::ScriptInterp::getMember ( void  )
Name* ost::ScriptInterp::getName ( void  )
inline

Definition at line 1377 of file script3.h.

const char* ost::ScriptInterp::getOption ( const char *  def = NULL)
char ost::ScriptInterp::getPackToken ( void  )
int MemPager::getPages ( void  )
inlineinherited

Return the total number of pages that have been allocated for this memory pool.

Returns
number of pages allocated.

Definition at line 181 of file misc.h.

static long ost::ScriptInterp::getRealValue ( double  val,
unsigned  prec 
)
static
Name* ost::ScriptInterp::getScript ( const char *  name)
unsigned long ost::ScriptInterp::getSequence ( void  )
inline

Definition at line 1325 of file script3.h.

Symbol* ost::ScriptInterp::getSymbol ( unsigned short  size = 0)
bool ost::ScriptInterp::getSymbol ( const char *  id,
char *  buffer,
unsigned short  max 
)
const char* ost::ScriptInterp::getSymbol ( const char *  id)
virtual ScriptSymbols* ost::ScriptInterp::getSymbols ( const char *  id)
protectedvirtual

Reimplemented in ost::BayonneSession.

const char* ost::ScriptInterp::getSymContent ( const char *  opt)
char* ost::ScriptInterp::getTemp ( void  )
unsigned ost::ScriptInterp::getTempSize ( void  )
static long ost::ScriptInterp::getTens ( unsigned  prec)
static
timeout_t ost::ScriptInterp::getTimeout ( void  )
bool ost::ScriptInterp::getTrace ( void  )
inline

Definition at line 1380 of file script3.h.

const char* ost::ScriptInterp::getValue ( const char *  def = NULL)
void ost::ScriptInterp::gotoEvent ( NamedEvent event)
protected

Branch to a selected event record immediately.

Parameters
eventrecord pointer to access.
const char* ost::ScriptInterp::hasOption ( void  )
virtual void ost::ScriptInterp::initialize ( void  )
protectedvirtual

New virtual to initialize script environment syms before running init sections.

Reimplemented in ost::BayonneSession.

void ost::ScriptInterp::initRuntime ( Name name)
protected

Initialize execution environment for a script.

bool ost::ScriptInterp::isExiting ( void  )
inline

Definition at line 1558 of file script3.h.

static bool ost::Script::isFunction ( Name scr)
staticinherited
virtual bool ost::ScriptInterp::isLocked ( const char *  id)
protectedvirtual
static bool ost::Script::isPrivate ( Name scr)
staticinherited
bool ost::ScriptInterp::isRunning ( void  )
inline

Definition at line 1555 of file script3.h.

static bool ost::Script::isScript ( Name scr)
staticinherited
static bool ost::Script::isSymbol ( const char *  id)
staticinherited
void Mutex::leave ( void  )
inlineinherited

Future abi will use enter/leave/test members.

Definition at line 269 of file thread.h.

void Mutex::leaveMutex ( void  )
inherited

Leaving a mutex frees that mutex for use by another thread.

If the mutex has been entered (invoked) multiple times (recursivily) by the same thread, then it will need to be exited the same number of instances before it is free for re-use. This operation can also be done using the LEAVE_CRITICAL macro or by the – operator on a mutex.

See Also
enterMutex
virtual void ost::ScriptInterp::logerror ( const char *  msg,
const char *  name = NULL 
)
virtual
virtual void ost::ScriptInterp::logmissing ( const char *  id,
const char *  level = "undefined",
const char *  group = "symbol" 
)
virtual
Symbol* ost::ScriptSymbols::make ( const char *  id,
unsigned short  size 
)
inherited
Symbol* ost::ScriptInterp::mapDirect ( const char *  id,
unsigned  short = 0 
)
Symbol* ost::ScriptInterp::mapSymbol ( const char *  id,
unsigned  short = 0 
)
void Mutex::nameMutex ( const char *  name)
inlineinherited

Enable setting of mutex name for deadlock debug.

Parameters
namefor mutex.

Definition at line 248 of file thread.h.

int ost::ScriptInterp::numericExpression ( long *  list,
int  max,
unsigned  prec,
ScriptProperty property = NULL 
)
bool ost::ScriptInterp::pull ( void  )
protected

Attempt to recall a previous stack level.

Returns
false if stack underflow.
void ost::ScriptSymbols::purge ( void  )
protectedinherited
bool ost::ScriptInterp::push ( void  )
protected

Attempt to push a value onto the stack.

Returns
false if stack overflow.
bool ost::ScriptInterp::putSymbol ( const char *  id,
const char *  value,
unsigned short  size = 0 
)
bool ost::ScriptInterp::redirect ( const char *  scr)
protected
bool ost::ScriptInterp::redirect ( bool  evflag)
protected
void ost::ScriptInterp::release ( void  )

Release any acquired lock...

virtual const char* ost::ScriptInterp::remapLocal ( void  )
protectedvirtual
void ost::ScriptInterp::ripple ( void  )
protected
bool ost::ScriptInterp::scriptEvent ( const char *  name,
bool  inhereted = true 
)
protected

Events reference to named @event handlers which have been attached to a script.

This allows low level applications to invoke an event handler much the way a signal handler occurs.

Returns
true if event handler exists.
Parameters
nameof event handler.
inheretedsearch flag.
bool ost::ScriptInterp::setConst ( const char *  id,
const char *  value 
)
static void Mutex::setDebug ( bool  mode)
inlinestaticinherited

Enable or disable deadlock debugging.

Parameters
modedebug mode.

Definition at line 240 of file thread.h.

void ost::ScriptInterp::setFrame ( void  )
bool ost::ScriptInterp::setNumber ( const char *  id,
const char *  value = NULL,
unsigned  dec = 0 
)
Symbol* ost::ScriptSymbols::setReference ( const char *  id,
Symbol target 
)
inherited
bool ost::ScriptInterp::setSymbol ( const char *  id,
const char *  value = NULL,
unsigned short  size = 0 
)
bool ost::ScriptInterp::signal ( const char *  name)

Signals are used during "delayed" execution steps when a signal event has occured aynchronously with the execution of a script controlled state event handler.

This mechanism can be used in place of calling implicit "Step" traps.

Returns
true if signal handler is not blocked.
Parameters
nameof signal identifier.
bool ost::ScriptInterp::signal ( unsigned  id)

Signals can be referenced by numeric id as well as by symbolic name.

Returns
true if signal handler is not blocked.
Parameters
idnumber of handler.
void ost::ScriptInterp::skip ( void  )
protected

Skip line without checking or setting updates.

virtual void ost::ScriptInterp::startThread ( void  )
protectedvirtual

Reimplemented in ost::BayonneSession.

bool ost::ScriptInterp::step ( void  )
static unsigned ost::Script::storage ( Symbol sym)
staticinherited
static bool ost::Script::symindex ( Symbol sym,
short  offset 
)
staticinherited
bool Mutex::test ( void  )
inlineinherited

Future abi will use enter/leave/test members.

Returns
true if entered.

Definition at line 277 of file thread.h.

void ost::ScriptInterp::trap ( unsigned  id)
protected

Set the execution interpreter to a trap identifier.

If no trap id exists, then advance to next script statement (unless exit trap).

Parameters
idof trap to select numerically.
void ost::ScriptInterp::trap ( const char *  name)
protected

Select trap by symbolic name and execute if found, else advance to next script step (unless exit trap).

Parameters
nameof trap to select.
bool ost::ScriptInterp::tryCatch ( const char *  id)
protected

Tries a catch handler...

Returns
true if caught.
Parameters
idof catch handler to try.
bool Mutex::tryEnterMutex ( void  )
inherited

Tries to lock the mutex for the current thread.

Behaves like enterMutex , except that it doesn't block the calling thread if the mutex is already locked by another thread.

Returns
true if locking the mutex was succesful otherwise false
See Also
enterMutex
leaveMutex
static bool ost::Script::use ( const char *  name)
staticinherited
virtual void ost::ScriptInterp::waitThread ( void  )
protectedvirtual

Friends And Related Function Documentation

friend class __EXPORT ScriptBinder
friend

Definition at line 1280 of file script3.h.

friend class __EXPORT ScriptCommand
friend

Definition at line 1279 of file script3.h.

friend class __EXPORT ScriptThread
friend

Definition at line 1278 of file script3.h.

Field Documentation

const char* ost::Script::access_host
staticinherited

Definition at line 285 of file script3.h.

const char* ost::Script::access_pass
staticinherited

Definition at line 284 of file script3.h.

const char* ost::Script::access_user
staticinherited

Definition at line 283 of file script3.h.

const char* ost::Script::altplugins
staticinherited

Definition at line 282 of file script3.h.

const char* ost::Script::apps_extensions
staticinherited

Definition at line 291 of file script3.h.

const char* ost::Script::apps_prefix
staticinherited

Definition at line 292 of file script3.h.

unsigned ost::Script::autoStepping
staticinherited

Definition at line 258 of file script3.h.

ScriptCommand* ost::ScriptInterp::cmd
protected

Definition at line 1310 of file script3.h.

char ost::Script::decimal
staticinherited

Definition at line 275 of file script3.h.

const char* ost::Script::etc_prefix
staticinherited

Definition at line 294 of file script3.h.

const char* ost::Script::exec_extensions
staticinherited

Definition at line 287 of file script3.h.

bool ost::Script::exec_funcs
staticinherited

Definition at line 286 of file script3.h.

const char* ost::Script::exec_prefix
staticinherited

Definition at line 289 of file script3.h.

const char* ost::Script::exec_token
staticinherited

Definition at line 288 of file script3.h.

const char* ost::Script::exit_token
staticinherited

Definition at line 290 of file script3.h.

bool ost::ScriptInterp::exiting
protected

Definition at line 1318 of file script3.h.

bool ost::Script::fastStart
staticinherited

Definition at line 255 of file script3.h.

unsigned ost::Script::fastStepping
staticinherited

Definition at line 257 of file script3.h.

Frame ost::ScriptInterp::frame[32]
protected

Definition at line 1314 of file script3.h.

Fun* ost::Script::ifun
staticprotectedinherited

Definition at line 306 of file script3.h.

ScriptImage* ost::ScriptInterp::image
protected

Definition at line 1311 of file script3.h.

Symbol* ost::ScriptSymbols::index[KEYDATA_INDEX_SIZE+1]
protectedinherited

Definition at line 313 of file script3.h.

bool ost::ScriptInterp::initialized
protected

Definition at line 1318 of file script3.h.

class __EXPORT ost::Script::Line
inherited

Definition at line 102 of file script3.h.

Mutex* ost::ScriptInterp::lock
protected

Definition at line 1309 of file script3.h.

const char* ost::Script::log_prefix
staticinherited

Definition at line 296 of file script3.h.

char ost::ScriptInterp::logname[32]
protected

Definition at line 1320 of file script3.h.

class __EXPORT ost::Script::Name
inherited

Definition at line 103 of file script3.h.

size_t ost::Script::pagesize
staticinherited

Definition at line 259 of file script3.h.

const char* ost::Script::plugins
staticinherited

Definition at line 281 of file script3.h.

unsigned long ost::ScriptInterp::sequence
protected

Definition at line 1319 of file script3.h.

ScriptInterp* ost::ScriptInterp::session
protected

Definition at line 1312 of file script3.h.

unsigned ost::ScriptInterp::stack
protected

Definition at line 1317 of file script3.h.

unsigned ost::Script::symlimit
staticinherited

Definition at line 261 of file script3.h.

unsigned ost::Script::symsize
staticinherited

Definition at line 260 of file script3.h.

unsigned ost::ScriptInterp::tempidx
protected

Definition at line 1316 of file script3.h.

char* ost::ScriptInterp::temps[16]
protected

Definition at line 1315 of file script3.h.

Test* ost::Script::test
staticprotectedinherited

Definition at line 305 of file script3.h.

ScriptThread* ost::ScriptInterp::thread
protected

Definition at line 1313 of file script3.h.

bool ost::ScriptInterp::trace
protected

Definition at line 1318 of file script3.h.

bool ost::ScriptInterp::updated
protected

Definition at line 1318 of file script3.h.

bool ost::Script::use_definitions
staticinherited

Definition at line 276 of file script3.h.

bool ost::Script::use_funcs
staticinherited

Definition at line 280 of file script3.h.

bool ost::Script::use_macros
staticinherited

Definition at line 277 of file script3.h.

bool ost::Script::use_merge
staticinherited

Definition at line 279 of file script3.h.

bool ost::Script::use_prefix
staticinherited

Definition at line 278 of file script3.h.

bool ost::Script::useBigmem
staticinherited

Definition at line 256 of file script3.h.

const char* ost::Script::var_prefix
staticinherited

Definition at line 295 of file script3.h.


The documentation for this class was generated from the following file: