Титульная страница | Пространства имен | Иерархия классов | Алфавитный указатель | Классы | Файлы | Члены пространства имен | Члены классов | Описания | Примеры

Класс cls_2::parser_context_t

#include <cls.hpp>

Полный список членов класса


Подробное описание

Контекст, на котором должен производиться разбор.

Для разбора CLS-содержимого должен быть определен входной поток, из которого извлекается CLS-содержимое. Так же может быть определен поток ошибок, в который должна помещаться информация об обнаруженных ошибках. Для описания найденых ошибок может потребоваться хранилище сообщений об ошибках.

Вся эта информация является контекстом парсера. И описывается контекст парсера при помощи данного класса.

Внимание:
Контекст парсера только хранит указатели на объекты входного потока, потока ошибок и хранилища сообщений. Но не управляет временем жизни этих объектов.


Открытые члены

 parser_context_t ()
 Конструктор по-умолчанию.

 parser_context_t (const parser_context_t &o)
 Конструктор копирования.

parser_context_toperator= (const parser_context_t &o)
 Оператор копирования.

input_stream_tset_input_stream (input_stream_t *stream)
 Установить новый входной поток.

input_stream_tquery_input_stream () const
 Получить текущий входной поток.

error_stream_t * set_error_stream (error_stream_t *stream)
 Установить новый поток ошибок.

error_stream_t * query_error_stream () const
 Получить текущий поток ошибок.

void show_error (const char *str)
 Отображает указанную строку на поток ошибок.

msg_storage_t * set_msg_storage (msg_storage_t *storage)
 Установить новый хранилище сообщений.

msg_storage_t * query_msg_storage () const
 Получить текущее хранилище ошибок.

const char * find_msg (int msg_id) const
 Поиск сообщения в текущем хранилище ошибок.


Защищенные данные

input_stream_tm_input_stream
 Текущий входной поток.

error_stream_t * m_error_stream
 Текущий поток ошибок.

msg_storage_t * m_msg_storage
 Текущее хранилище сообщений.


Методы

const char * cls_2::parser_context_t::find_msg int  msg_id  )  const
 

Поиск сообщения в текущем хранилище ошибок.

Поиск осуществляется только если хранилище ошибок задано.

Возвращает:
0, если сообщение не найдено или не задано хранилище ошибок.

error_stream_t * cls_2::parser_context_t::set_error_stream error_stream_t *  stream  ) 
 

Установить новый поток ошибок.

Возвращает:
предыдущий входной поток.
Аргументы:
stream  Может быть 0. В этом случае будет считаться, что контексту новый поток ошибок не назначен.

input_stream_t * cls_2::parser_context_t::set_input_stream input_stream_t stream  ) 
 

Установить новый входной поток.

Возвращает:
предыдущий входной поток.
Аргументы:
stream  Может быть 0. В этом случае будет считаться, что контексту новый входной поток не назначен.

msg_storage_t * cls_2::parser_context_t::set_msg_storage msg_storage_t *  storage  ) 
 

Установить новый хранилище сообщений.

Возвращает:
предыдущее хранилище сообщений.
Аргументы:
storage  Может быть 0. В этом случае будет считаться, что контексту новый хранилище сообщений не назначено.

void cls_2::parser_context_t::show_error const char *  str  ) 
 

Отображает указанную строку на поток ошибок.

Ничего не делает, если поток ошибок не назначен.

Аргументы:
str  Может быть 0.


Объявления и описания членов классов находятся в файлах:
Документация по cls_2. Последние изменения: Wed Aug 4 15:13:00 2004. Создано системой doxygen 1.3.7
Hosted by uCoz