DBus::Signature Class Reference

Represents a DBus signature. More...

#include <signature.h>

Public Types

typedef SignatureIterator iterator
 
typedef const SignatureIterator const_iterator
 
typedef std::string::size_type size_type
 

Public Member Functions

 Signature ()
 
 Signature (const std::string &s, size_type pos=0, size_type n=npos)
 
 Signature (const char *)
 
 Signature (const char *s, size_type n)
 
 Signature (size_type n, char c)
 
 ~Signature ()
 
 operator const std::string & () const
 
const std::string & str () const
 
Signatureoperator= (const std::string &s)
 
Signatureoperator= (const char *s)
 
bool operator== (const std::string &s) const
 
iterator begin ()
 
const_iterator begin () const
 
iterator end ()
 
const_iterator end () const
 
bool is_valid () const
 True if the signature is a valid DBus signature. More...
 
bool is_singleton () const
 True if the signature is a valid DBus signature and contains exactly one complete type. More...
 
void print_tree (std::ostream *stream) const
 Print the signature tree to the given ostream. More...
 

Static Public Attributes

static const size_type npos = std::string::npos
 

Private Member Functions

void initialize ()
 
std::shared_ptr< priv::SignatureNodecreate_signature_tree (std::string::const_iterator *it, std::stack< ContainerType > *container_stack, bool *ok)
 
void print_node (std::ostream *stream, priv::SignatureNode *node, int spaces) const
 

Private Attributes

std::shared_ptr< priv_data > m_priv
 

Detailed Description

Represents a DBus signature.

DBus signatures indicate what type of data the message contains/the method parameters.

Author
Rick L Vinyard Jr rviny.nosp@m.ard@.nosp@m.cs.nm.nosp@m.su.e.nosp@m.du

Member Typedef Documentation

◆ const_iterator

◆ iterator

◆ size_type

typedef std::string::size_type DBus::Signature::size_type

Constructor & Destructor Documentation

◆ Signature() [1/5]

DBus::Signature::Signature ( )

◆ Signature() [2/5]

DBus::Signature::Signature ( const std::string &  s,
size_type  pos = 0,
size_type  n = npos 
)

References initialize(), and m_priv.

◆ Signature() [3/5]

DBus::Signature::Signature ( const char *  s)

References initialize(), and m_priv.

◆ Signature() [4/5]

DBus::Signature::Signature ( const char *  s,
size_type  n 
)

References initialize(), and m_priv.

◆ Signature() [5/5]

DBus::Signature::Signature ( size_type  n,
char  c 
)

References initialize(), and m_priv.

◆ ~Signature()

DBus::Signature::~Signature ( )

Member Function Documentation

◆ begin() [1/2]

◆ begin() [2/2]

Signature::const_iterator DBus::Signature::begin ( ) const

References m_priv.

◆ create_signature_tree()

std::shared_ptr< priv::SignatureNode > DBus::Signature::create_signature_tree ( std::string::const_iterator *  it,
std::stack< ContainerType > *  container_stack,
bool *  ok 
)
private

◆ end() [1/2]

◆ end() [2/2]

Signature::const_iterator DBus::Signature::end ( ) const

◆ initialize()

void DBus::Signature::initialize ( )
private

◆ is_singleton()

bool DBus::Signature::is_singleton ( ) const

True if the signature is a valid DBus signature and contains exactly one complete type.

References DBus::INVALID, and m_priv.

◆ is_valid()

bool DBus::Signature::is_valid ( ) const

True if the signature is a valid DBus signature.

References m_priv.

◆ operator const std::string &()

DBus::Signature::operator const std::string & ( ) const

◆ operator=() [1/2]

Signature & DBus::Signature::operator= ( const char *  s)

References m_priv.

◆ operator=() [2/2]

Signature & DBus::Signature::operator= ( const std::string &  s)

References m_priv.

◆ operator==()

bool DBus::Signature::operator== ( const std::string &  s) const
inline

References str().

◆ print_node()

void DBus::Signature::print_node ( std::ostream *  stream,
priv::SignatureNode node,
int  spaces 
) const
private

◆ print_tree()

void DBus::Signature::print_tree ( std::ostream *  stream) const

Print the signature tree to the given ostream.

Parameters
stream

References m_priv.

◆ str()

const std::string & DBus::Signature::str ( ) const

Member Data Documentation

◆ m_priv

std::shared_ptr<priv_data> DBus::Signature::m_priv
private

◆ npos

const size_type DBus::Signature::npos = std::string::npos
static

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