TAO_CosTrader 4.0.1
Loading...
Searching...
No Matches
Protected Member Functions | Static Protected Member Functions | Protected Attributes | Static Private Attributes | List of all members
TAO_Interpreter Class Reference

TAO_Interpreter is the superclass for all interpreters. Its build tree method invokes the yacc parser to parse a constraint or preference string. More...

#include <Interpreter.h>

Inheritance diagram for TAO_Interpreter:
Inheritance graph
[legend]
Collaboration diagram for TAO_Interpreter:
Collaboration graph
[legend]

Protected Member Functions

 TAO_Interpreter ()
 Constructor.
 
 ~TAO_Interpreter ()
 Destructor.
 
int build_tree (const char *preferences)
 

Static Protected Member Functions

static int is_empty_string (const char *str)
 

Protected Attributes

TAO_Constraintroot_
 

Static Private Attributes

static TAO_SYNCH_MUTEX parserMutex__
 This mutex protects the <build_tree> method from reentrance.
 

Detailed Description

TAO_Interpreter is the superclass for all interpreters. Its build tree method invokes the yacc parser to parse a constraint or preference string.

Constructor & Destructor Documentation

◆ TAO_Interpreter()

TAO_Interpreter::TAO_Interpreter ( )
protected

Constructor.

◆ ~TAO_Interpreter()

TAO_Interpreter::~TAO_Interpreter ( )
protected

Destructor.

Member Function Documentation

◆ build_tree()

int TAO_Interpreter::build_tree ( const char * preferences)
protected

Using the Yacc generated parser, construct an expression tree representing <constraints> from the tokens returned by it.

◆ is_empty_string()

int TAO_Interpreter::is_empty_string ( const char * str)
staticprotected

Member Data Documentation

◆ parserMutex__

TAO_SYNCH_MUTEX TAO_Interpreter::parserMutex__
staticprivate

This mutex protects the <build_tree> method from reentrance.

◆ root_

TAO_Constraint* TAO_Interpreter::root_
protected

The root of the expression tree, not equal to null if build_tree successfully builds a tree from the constraints.


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