MessageFormatter.cxx revision 7c478bd95313f5f23a4c958a745db2134aa03244
// Copyright (c) 1994, 1995, 1997 James Clark
// See the file COPYING for copying permission.
#pragma ident "%Z%%M% %I% %E% SMI"
#ifdef __GNUG__
#pragma implementation
#endif
#include "splib.h"
#include "MessageFormatter.h"
#include "OutputCharStream.h"
#include "rtti.h"
#include "MessageArg.h"
#include "ErrnoMessageArg.h"
#include "SearchResultMessageArg.h"
#include "MessageFormatterMessages.h"
#include <string.h>
#include <errno.h>
#ifdef DECLARE_STRERROR
extern "C" {
char *strerror(int);
}
#endif
#ifdef SP_NAMESPACE
namespace SP_NAMESPACE {
#endif
{
}
{
for (unsigned i = 0;; i++) {
if (i > 0
// describe last match in previous open element
if (prevInfo.matchIndex != 0)
os << ')';
}
}
if (i == nOpenElements)
break;
const OpenElementInfo &e = openElementInfo[i];
if (i > 0 && !e.included) {
if (n != 0)
}
}
}
{
return;
}
size_t i = 0;
if (text[i] == '%') {
i++;
break;
}
else
i++;
}
else {
i++;
}
}
}
{
return 0;
return 1;
}
{
os() << n;
}
{
os() << n;
switch (n % 10) {
case 1:
break;
case 2:
break;
case 3:
break;
default:
break;
}
}
{
else
}
{
if (ea) {
return;
}
const SearchResultMessageArg *sr
if (sr) {
if (i > 0)
os() << ", ";
default:
os() << " (";
os() << ")";
#ifdef ENOENT
case ENOENT:
#endif
break;
}
}
return;
}
}
{
}
#ifdef SP_NAMESPACE
}
#endif