reSIProcate
SIP stack, Dialog Usage Manager and related libraries
Loading...
Searching...
No Matches
resip::StringCategory Class Reference

Represents the "header-value" element in the RFC 3261 grammar (ie, an unknown header field value). More...

#include <StringCategory.hxx>

Inheritance diagram for resip::StringCategory:
[legend]

Public Member Functions

 StringCategory ()
 
 StringCategory (const Data &value)
 
 StringCategory (const HeaderFieldValue &hfv, Headers::Type type, PoolBase *pool=0)
 
 StringCategory (const StringCategory &orig, PoolBase *pool=0)
 
StringCategory & operator= (const StringCategory &)
 
virtual void parse (ParseBuffer &pb)
 
virtual EncodeStream & encodeParsed (EncodeStream &str) const
 
virtual ParserCategory * clone () const
 
virtual ParserCategory * clone (void *location) const
 
virtual ParserCategory * clone (PoolBase *pool) const
 
const Data & value () const
 
Data & value ()
 
- Public Member Functions inherited from resip::ParserCategory
 ParserCategory (const HeaderFieldValue &headerFieldValue, Headers::Type type, PoolBase *pool=0)
 
 ParserCategory (const char *buf, int length, Headers::Type type, PoolBase *pool=0)
 
 ParserCategory (const ParserCategory &rhs, PoolBase *pool=0)
 
ParserCategory & operator= (const ParserCategory &rhs)
 
virtual ~ParserCategory ()
 
virtual Parameter * createParam (ParameterTypes::Type type, ParseBuffer &pb, const std::bitset< 256 > &terminators, PoolBase *pool)
 
bool exists (const ParamBase &paramType) const
 Checks for the existence of a natively supported parameter.
 
void remove (const ParamBase &paramType)
 Removes a natively supported parameter, if the parameter is present.
 
const Data & param (const ExtensionParameter &param) const
 Const accessor for non-natively-supported parameter types.
 
Data & param (const ExtensionParameter &param)
 Accessor for non-natively-supported parameter types.
 
void remove (const ExtensionParameter &param)
 Removes a non-natively-supported parameter, if the parameter is present.
 
bool exists (const ExtensionParameter &param) const
 Checks for the existence of a non-natively-supported parameter.
 
void removeParametersExcept (const ParameterTypeSet &set=EmptyParameterTypeSet)
 Removes all known parameters except those that are specified in set.
 
void clearUnknownParameters ()
 
void parseParameters (ParseBuffer &pb)
 
EncodeStream & encodeParameters (EncodeStream &str) const
 Encodes parameters as they should appear on the wire.
 
Data commutativeParameterHash () const
 
Parameter * getParameterByEnum (ParameterTypes::Type type) const
 
void removeParameterByEnum (ParameterTypes::Type type)
 
void setParameter (const Parameter *parameter)
 
int numKnownParams () const
 Returns the number of known (natively supported) parameters.
 
int numUnknownParams () const
 Returns the number of unknown parameters.
 
- Public Member Functions inherited from resip::LazyParser
 LazyParser (const HeaderFieldValue &headerFieldValue)
 
 LazyParser (const char *buf, int length)
 
 LazyParser (const HeaderFieldValue &headerFieldValue, HeaderFieldValue::CopyPaddingEnum e)
 
 LazyParser (const LazyParser &rhs)
 
 LazyParser (const LazyParser &rhs, HeaderFieldValue::CopyPaddingEnum e)
 
LazyParser & operator= (const LazyParser &rhs)
 
virtual ~LazyParser ()
 
EncodeStream & encode (EncodeStream &str) const
 Encodes this element to a stream, in the fashion it should be represented on the wire.
 
bool isParsed () const
 Returns true iff a parse has been attempted.
 
HeaderFieldValue & getHeaderField ()
 
void checkParsed () const
 
void checkParsed ()
 
void doParse () const
 
void markDirty () const
 
bool isWellFormed () const
 Returns true iff this element was parsed successfully, according to the implementation of parse().
 

Static Public Attributes

static constexpr CommaHandlingMode commaHandling = NoCommaTokenizing
 
- Static Public Attributes inherited from resip::ParserCategory
static const ParameterTypeSet EmptyParameterTypeSet
 

Additional Inherited Members

- Public Types inherited from resip::ParserCategory
enum  { UnknownParserCategory = -1 }
 
enum  CommaHandlingMode { NoCommaTokenizing = 0 , CommasAllowedOutputMulti = 1 , CommasAllowedOutputCommas = 3 }
 
typedef std::set< ParameterTypes::Type > ParameterTypeSet
 
- Protected Types inherited from resip::ParserCategory
typedef std::vector< Parameter *, StlPoolAllocator< Parameter *, PoolBase > > ParameterList
 
- Protected Member Functions inherited from resip::ParserCategory
 ParserCategory (PoolBase *pool=0)
 
bool addParameter (Parameter *param)
 
bool addParameter (UnknownParameter *unknownParam)
 
Parameter * getParameterByData (const Data &data) const
 
void removeParameterByData (const Data &data)
 
PoolBase * getPool ()
 
void freeParameter (Parameter *p)
 
virtual const Data & errorContext () const
 
- Protected Member Functions inherited from resip::LazyParser
 LazyParser ()
 
void clear ()
 
- Protected Attributes inherited from resip::ParserCategory
ParameterList mParameters
 
ParameterList mUnknownParameters
 
PoolBase * mPool
 
Headers::Type mHeaderType
 

Detailed Description

Represents the "header-value" element in the RFC 3261 grammar (ie, an unknown header field value).

Definition at line 17 of file StringCategory.hxx.

Constructor & Destructor Documentation

◆ StringCategory() [1/4]

StringCategory::StringCategory ( )

Definition at line 18 of file StringCategory.cxx.

◆ StringCategory() [2/4]

StringCategory::StringCategory ( const Data &  value)
explicit

Definition at line 23 of file StringCategory.cxx.

◆ StringCategory() [3/4]

StringCategory::StringCategory ( const HeaderFieldValue &  hfv,
Headers::Type  type,
PoolBase *  pool = 0 
)

Definition at line 28 of file StringCategory.cxx.

◆ StringCategory() [4/4]

StringCategory::StringCategory ( const StringCategory &  orig,
PoolBase *  pool = 0 
)

Definition at line 35 of file StringCategory.cxx.

Member Function Documentation

◆ clone() [1/3]

ParserCategory * StringCategory::clone ( ) const
virtual

Implements resip::ParserCategory.

Definition at line 52 of file StringCategory.cxx.

◆ clone() [2/3]

ParserCategory * StringCategory::clone ( PoolBase *  pool) const
virtual

Implements resip::ParserCategory.

Definition at line 64 of file StringCategory.cxx.

◆ clone() [3/3]

ParserCategory * StringCategory::clone ( void *  location) const
virtual

Implements resip::ParserCategory.

Definition at line 58 of file StringCategory.cxx.

◆ encodeParsed()

EncodeStream & StringCategory::encodeParsed ( EncodeStream &  str) const
virtual

Implements resip::LazyParser.

Definition at line 78 of file StringCategory.cxx.

◆ operator=()

StringCategory & StringCategory::operator= ( const StringCategory &  rhs)

Definition at line 42 of file StringCategory.cxx.

◆ parse()

void StringCategory::parse ( ParseBuffer &  pb)
virtual

Implements resip::LazyParser.

Definition at line 70 of file StringCategory.cxx.

◆ value() [1/2]

Data & StringCategory::value ( )

Definition at line 92 of file StringCategory.cxx.

◆ value() [2/2]

const Data & StringCategory::value ( ) const

Definition at line 85 of file StringCategory.cxx.

Member Data Documentation

◆ commaHandling

constexpr CommaHandlingMode resip::StringCategory::commaHandling = NoCommaTokenizing
staticconstexpr

Definition at line 20 of file StringCategory.hxx.


The documentation for this class was generated from the following files: