Param.h revision 7c478bd95313f5f23a4c958a745db2134aa03244
// Copyright (c) 1994 James Clark
// See the file COPYING for copying permission.
#pragma ident "%Z%%M% %I% %E% SMI"
#ifndef Param_INCLUDED
#define Param_INCLUDED 1
#ifdef __GNUG__
#pragma interface
#endif
#include "Boolean.h"
#include "ContentToken.h"
#include "StringC.h"
#include "Location.h"
#include "MessageArg.h"
#include "Mode.h"
#include "NameToken.h"
#include "Owner.h"
#include "Ptr.h"
#include "Syntax.h"
#include "Text.h"
#include "Vector.h"
// This describes a markup declaration parameter.
#ifdef SP_NAMESPACE
#endif
Param() { }
typedef unsigned char Type;
enum {
dso,
mdc,
pero,
name,
reservedName, // Syntax::ReservedName is added to this
// this is a reserved name preceded by the RNI delimiter
};
};
Boolean inclusions() const;
Boolean exclusions() const;
void init();
// invalid, minus, pero
// invalid, nameGroup, nameTokenGroup, modelGroup
// invalid, reservedName, name, entityName, paramEntityName, attributeValue
// invalid, number, attributeValue
// invalid, attributeValue
// invalid, minimumLiteral, systemIdentifier, paramLiteral,
// (tokenized)attributeValueLiteral
};
MessageArg *copy() const;
void append(MessageBuilder &) const;
};
inline
{
return mainMode_;
}
inline
{
return mdc_;
}
inline
{
return rni_;
}
inline
{
return dso_;
}
inline
{
return inclusions_;
}
inline
{
return exclusions_;
}
inline
{
return reservedNames_[i];
}
inline
{
return group_;
}
inline
{
return nameStart_;
}
inline
{
return digit_;
}
inline
{
return nmchar_;
}
inline
{
return literal_;
}
#ifdef SP_NAMESPACE
}
#endif
#endif /* not Param_INCLUDED */