1#if defined(HAVE_CONFIG_H)
17#define RESIPROCATE_SUBSYSTEM Subsystem::SIP
38 mUnknownMethodName(rhs.mUnknownMethodName),
39 mSequence(rhs.mSequence)
48 mMethod = rhs.mMethod;
49 mUnknownMethodName = rhs.mUnknownMethodName;
50 mSequence = rhs.mSequence;
58 return (mMethod == rhs.mMethod &&
59 (mMethod != UNKNOWN || mUnknownMethodName == rhs.mUnknownMethodName) &&
60 mSequence == rhs.mSequence);
66 if (mUnknownMethodName < rhs.mUnknownMethodName)
70 else if (mUnknownMethodName > rhs.mUnknownMethodName)
75 return mSequence < rhs.mSequence;
114 return mUnknownMethodName;
121 return mUnknownMethodName;
161 pb.
data(mUnknownMethodName, anchorPtr);
169 << (mMethod != UNKNOWN ?
getMethodName(mMethod) : mUnknownMethodName);
Represents a CSeq header field value (this doesn't have an official name in the RFC 3261 grammar).
unsigned int & sequence()
CSeqCategory & operator=(const CSeqCategory &)
virtual EncodeStream & encodeParsed(EncodeStream &str) const
virtual void parse(ParseBuffer &pb)
bool operator==(const CSeqCategory &rhs) const
bool operator<(const CSeqCategory &rhs) const
Data & unknownMethodName()
virtual ParserCategory * clone() const
An alternative to std::string, encapsulates an arbitrary buffer of bytes.
Provides string-parsing functionality with protection from buffer overflow.
CurrentPosition skipNonWhitespace()
uint32_t uInt32()
dcm! – merge these, ask about length checks
CurrentPosition skipWhitespace()
CurrentPosition position() const
void data(Data &data, const char *start) const
make the passed in data share memory with the buffer (uses Data::Share)
Base class for all SIP grammar elements that can have parameters.
ParserCategory & operator=(const ParserCategory &rhs)
static const char * SPACE
dcm! – add UnusedChecking(_enum) below;
const Data & getMethodName(MethodTypes t)
MethodTypes getMethodType(const Data &name)