📄 messagereporter.h
字号:
// Copyright (c) 1994 James Clark// See the file COPYING for copying permission.#ifndef MessageReporter_INCLUDED#define MessageReporter_INCLUDED 1#ifdef __GNUG__#pragma interface#endif#include "types.h"#include "MessageFormatter.h"#include "Boolean.h"#include "OutputCharStream.h"#include "Message.h"#include "Location.h"#include "StringC.h"#ifdef SP_NAMESPACEnamespace SP_NAMESPACE {#endifclass SP_API MessageReporter : public MessageFormatter, public Messenger {public: enum Option { openElements = 01, openEntities = 02, messageNumbers = 04 }; // The OutputCharStream will be deleted by the MessageReporter MessageReporter(OutputCharStream *); ~MessageReporter(); void setMessageStream(OutputCharStream *); OutputCharStream *releaseMessageStream(); void dispatchMessage(const Message &); virtual Boolean getMessageText(const MessageFragment &, StringC &); void addOption(Option); void setProgramName(const StringC &);private: MessageReporter(const MessageReporter &); // undefined void operator=(const MessageReporter &); // undefined const ExternalInfo *locationHeader(const Location &, Offset &off); const ExternalInfo *locationHeader(const Origin *, Index, Offset &off); void printLocation(const ExternalInfo *info, Offset off); OutputCharStream &os(); OutputCharStream *os_; unsigned options_; StringC programName_;};inlineOutputCharStream &MessageReporter::os(){ return *os_;}inlinevoid MessageReporter::setProgramName(const StringC &programName){ programName_ = programName;}inlineOutputCharStream *MessageReporter::releaseMessageStream(){ OutputCharStream *tem = os_; os_ = 0; return tem;}#ifdef SP_NAMESPACE}#endif#endif /* not MessageReporter_INCLUDED */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -