Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

ACE_Svc_Conf_Param Class Reference

An instance of this object will be passed down to the yyparse() and yylex() functions. More...

#include <Svc_Conf.h>

Collaboration diagram for ACE_Svc_Conf_Param:

Collaboration graph
[legend]
List of all members.

Public Types

enum  SVC_CONF_PARAM_TYPE { SVC_CONF_FILE, SVC_CONF_DIRECTIVE }

Public Methods

 ACE_Svc_Conf_Param (FILE *file)
 Constructor. More...

 ACE_Svc_Conf_Param (const ACE_TCHAR *directive)
 Constructor. More...

 ~ACE_Svc_Conf_Param (void)

Public Attributes

union {
   FILE *   file
   const ACE_TCHAR *   directive
source
SVC_CONF_PARAM_TYPE type
 Discriminant use to determine which union member to use. More...

int yyerrno
 Keeps track of the number of errors encountered so far. More...

int yylineno
 Keeps track of the current line number for error-handling routine. More...

ace_yy_buffer_state * buffer
 Lexer buffer that corresponds to the current Service Configurator file/direct scan. More...

ACE_Obstack_T< ACE_TCHARobstack
 Obstack used for efficient memory allocation when parsing/scanning a service configurator directive. More...


Detailed Description

An instance of this object will be passed down to the yyparse() and yylex() functions.

This class retains the state for a given parse/scan. It primarily makes it possible to hold the static object lock in the scanner for as short a period of time as possible. The resulting finer grained locking prevents deadlocks from occuring when scanning a `svc.conf' file and activating an ACE_Task, for example, as a result of processing the directives in that file.

Definition at line 62 of file Svc_Conf.h.


Member Enumeration Documentation

enum ACE_Svc_Conf_Param::SVC_CONF_PARAM_TYPE
 

Enumeration values:
SVC_CONF_FILE  The lexer will scan a file containing one or more directives.
SVC_CONF_DIRECTIVE  The lexer will scan a string containing a directive.

Definition at line 66 of file Svc_Conf.h.

00067     {
00068       /// The lexer will scan a file containing one or more directives.
00069       SVC_CONF_FILE,
00070 
00071       /// The lexer will scan a string containing a directive.
00072       SVC_CONF_DIRECTIVE
00073     };


Constructor & Destructor Documentation

ACE_Svc_Conf_Param::ACE_Svc_Conf_Param FILE *    file [inline]
 

Constructor.

Definition at line 76 of file Svc_Conf.h.

References buffer, file, obstack, source, SVC_CONF_FILE, type, yyerrno, and yylineno.

00077     : type (SVC_CONF_FILE),
00078       yyerrno (0),
00079       yylineno (1),
00080       buffer (0),
00081       obstack ()
00082   {
00083     source.file = file;
00084   }

ACE_Svc_Conf_Param::ACE_Svc_Conf_Param const ACE_TCHAR   directive [inline]
 

Constructor.

Definition at line 87 of file Svc_Conf.h.

References ACE_TCHAR, buffer, directive, obstack, source, SVC_CONF_DIRECTIVE, type, yyerrno, and yylineno.

00088     : type (SVC_CONF_DIRECTIVE),
00089       yyerrno (0),
00090       yylineno (1),
00091       buffer (0),
00092       obstack ()
00093   {
00094     source.directive = directive;
00095   }

ACE_Svc_Conf_Param::~ACE_Svc_Conf_Param void    [inline]
 

Definition at line 97 of file Svc_Conf.h.

References ace_yy_delete_buffer.

00098   {
00099     ace_yy_delete_buffer (this->buffer);
00100   }


Member Data Documentation

ace_yy_buffer_state* ACE_Svc_Conf_Param::buffer
 

Lexer buffer that corresponds to the current Service Configurator file/direct scan.

Definition at line 125 of file Svc_Conf.h.

Referenced by ACE_Svc_Conf_Param.

const ACE_TCHAR* ACE_Svc_Conf_Param::directive
 

String containing directive that will be scanned and parsed.

Definition at line 110 of file Svc_Conf.h.

Referenced by ACE_Svc_Conf_Param.

FILE* ACE_Svc_Conf_Param::file
 

FILE stream from which directives will be scanned and parsed.

Definition at line 107 of file Svc_Conf.h.

Referenced by ACE_Svc_Conf_Param.

ACE_Obstack_T<ACE_TCHAR> ACE_Svc_Conf_Param::obstack
 

Obstack used for efficient memory allocation when parsing/scanning a service configurator directive.

Definition at line 129 of file Svc_Conf.h.

Referenced by ACE_Svc_Conf_Param.

union { ... } ACE_Svc_Conf_Param::source
 

Referenced by ACE_Svc_Conf_Param.

SVC_CONF_PARAM_TYPE ACE_Svc_Conf_Param::type
 

Discriminant use to determine which union member to use.

Definition at line 115 of file Svc_Conf.h.

Referenced by ACE_Svc_Conf_Param.

int ACE_Svc_Conf_Param::yyerrno
 

Keeps track of the number of errors encountered so far.

Definition at line 118 of file Svc_Conf.h.

Referenced by ACE_Svc_Conf_Param, and ACE_Service_Config::process_directives_i.

int ACE_Svc_Conf_Param::yylineno
 

Keeps track of the current line number for error-handling routine.

Definition at line 121 of file Svc_Conf.h.

Referenced by ACE_Svc_Conf_Param.


The documentation for this class was generated from the following file:
Generated on Mon Jun 16 12:57:08 2003 for ACE by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002