Message.h revision 7c478bd95313f5f23a4c958a745db2134aa03244
// Copyright (c) 1994 James Clark
// See the file COPYING for copying permission.
#pragma ident "%Z%%M% %I% %E% SMI"
#ifndef Message_INCLUDED
#define Message_INCLUDED 1
#ifdef __GNUG__
#pragma interface
#endif
#include <stddef.h>
#include "Location.h"
#include "Vector.h"
#include "CopyOwner.h"
#include "Boolean.h"
#include "StringC.h"
#include "MessageArg.h"
#ifdef SP_NAMESPACE
#endif
enum {
libModule = 0,
appModule = 1
};
unsigned module() const;
unsigned number() const;
const char *text() const;
unsigned short number_;
unsigned char module_;
unsigned char spare_;
#ifndef SP_NO_MESSAGE_TEXT
const char *text_;
#endif
};
enum Severity {
info,
};
MessageFragment auxFragment() const;
#ifndef SP_NO_MESSAGE_TEXT
const char *auxText_;
#endif
};
};
};
};
};
};
};
};
const char *auxText = 0);
};
const char *auxText = 0);
};
unsigned matchIndex;
};
Message();
const MessageType *type;
};
Messenger();
void message(const MessageType0 &);
void message(const MessageType2 &,
const MessageArg &,
const MessageArg &);
void message(const MessageType3 &,
const MessageArg &,
const MessageArg &,
const MessageArg &);
void message(const MessageType4 &,
const MessageArg &,
const MessageArg &,
const MessageArg &,
const MessageArg &);
void message(const MessageType5 &,
const MessageArg &,
const MessageArg &,
const MessageArg &,
const MessageArg &,
const MessageArg &);
void message(const MessageType6 &,
const MessageArg &,
const MessageArg &,
const MessageArg &,
const MessageArg &,
const MessageArg &,
const MessageArg &);
void setNextLocation(const Location &);
void doInitMessage(Message &);
};
void dispatchMessage(const Message &);
void dispatchMessage(Message &);
void initMessage(Message &);
};
void initMessage(Message &);
};
void dispatchMessage(const Message &);
};
};
inline
unsigned MessageFragment::module() const
{
return module_;
}
inline
unsigned MessageFragment::number() const
{
return number_;
}
inline
const char *MessageFragment::text() const
{
#ifdef SP_NO_MESSAGE_TEXT
return 0;
#else
return text_;
#endif
}
inline
{
}
inline
{
return MessageFragment(module(),
number() + 1,
#ifdef SP_NO_MESSAGE_TEXT
0
#else
#endif
);
}
inline
{
}
inline
{
}
#ifdef SP_NAMESPACE
}
#endif
#endif /* not Message_INCLUDED */