Aegis  4.25.D505
Data Structures | Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes
meta_context_sem Class Reference

#include <sem.h>

Inheritance diagram for meta_context_sem:
meta_context

Data Structures

struct  sem_ty

Public Member Functions

virtual ~meta_context_sem ()
 meta_context_sem ()
void * parse (const nstring &filename, meta_type *type)
void * parse_env (const nstring &name, meta_type *type)
void * parse_input (input &ifp, meta_type *type)

Protected Member Functions

void integer (long n)
void real (double n)
void string (const nstring &s)
void enumeration (const nstring &s)
void list ()
void list_end ()
void field (const nstring &name)
void field_end ()
void end ()

Private Member Functions

void sem_push (meta_type *type, void *addr)
void sem_pop ()
 meta_context_sem (const meta_context_sem &)
meta_context_semoperator= (const meta_context_sem &)

Private Attributes

sem_tyroot

Detailed Description

The meta_context_sem class is used to represent the processig required to parse an Aegis meta-data file, using the original style of meta-data handling.

Definition at line 32 of file sem.h.


Constructor & Destructor Documentation

virtual meta_context_sem::~meta_context_sem ( ) [virtual]

The destructor.

The default constructor.

The copy constructor. Do not use.


Member Function Documentation

void meta_context_sem::end ( ) [protected, virtual]

The end method is called at the end of input.

Implements meta_context.

void meta_context_sem::enumeration ( const nstring s) [protected, virtual]

The enumeration method is called when the parser sees a name in an enumeration tag place.

Parameters:
sThe name of the enumerand.

Implements meta_context.

void meta_context_sem::field ( const nstring name) [protected, virtual]

The field method is called when the parser sees the start of a name=value field. The field_end method will be called after the value has been parsed.

Parameters:
nameThe nam eof the field.

Implements meta_context.

void meta_context_sem::field_end ( ) [protected, virtual]

The field_end method is called by the parser when it sees the end of a name=value field.

Implements meta_context.

void meta_context_sem::integer ( long  n) [protected, virtual]

The integer method is called by the parser when an integer value is seen.

Parameters:
nThe value of the number.

Implements meta_context.

void meta_context_sem::list ( ) [protected, virtual]

The list method is called when the parser sees the start of a list value. The pop method will be called after the value has been parsed.

Implements meta_context.

void meta_context_sem::list_end ( ) [protected, virtual]

The list_end method is called by the parser when it sees the end of a list element.

Implements meta_context.

meta_context_sem& meta_context_sem::operator= ( const meta_context_sem ) [private]

The assignment operator. Do not use.

void* meta_context_sem::parse ( const nstring filename,
meta_type type 
)

The parse method is used to parse a file against the supplied meta-data type.

Parameters:
filenameThe name of the file to be parsed.
typeThe type of data expected.
void* meta_context_sem::parse_env ( const nstring name,
meta_type type 
)

The parse_env method is used to parse an environment variable against the supplied meta-data type.

Parameters:
nameThe name of the environment variable to be parsed.
typeThe type of data expected.
void* meta_context_sem::parse_input ( input ifp,
meta_type type 
)

The parse_input method is used to parse the given input against the supplied meta-data type.

Parameters:
ifpThe input stream to be parsed.
typeThe type of data expected.
void meta_context_sem::real ( double  n) [protected, virtual]

The real method is called by the parser when a floating point value is seen.

Parameters:
nThe value of the number.

Implements meta_context.

void meta_context_sem::sem_pop ( ) [private]

The sem_pop method is used to pop the top entry from the stack of types being parsed.

void meta_context_sem::sem_push ( meta_type type,
void *  addr 
) [private]

The sem_push method is used to push another entry onto the stack of types being parsed.

Parameters:
typeThe type of data being parsed.
addrThe address of the data being parsed.
void meta_context_sem::string ( const nstring s) [protected, virtual]

The string method is called by the parser when a string value is seen.

Parameters:
sThe value of the string constant.

Implements meta_context.


Field Documentation

The root instance variable is used to remember the top of the linked list, describing the push-down stack of types being parsed.

Definition at line 120 of file sem.h.


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