Library: CppParser
Package: Attributes
Header: Poco/CppParser/Attributes.h
This class stores attributes for a symbol table entry. Attributes are simple name-value pairs, where both name and values are strings.
Member Functions: begin, clear, end, getBool, getInt, getString, has, operator =, operator [], remove, set
typedef std::map < std::string, std::string > AttrMap;
typedef AttrMap::const_iterator Iterator;
Attributes();
Creates the Attributes object.
Attributes(
const Attributes & attrs
);
Creates the Attributes object by copying another one.
~Attributes();
Destroys the Attributes object.
Iterator begin() const;
void clear();
Clears all attributes.
Iterator end() const;
bool getBool(
const std::string & name
) const;
Returns the attribute's value as a boolean. The returned value is 'true', if and only if the stored value is not "false".
Throws a Poco::NotFoundException if the attribute does not exist.
bool getBool(
const std::string & name,
bool defaultValue
) const;
Returns the attribute's value as a boolean, if it exists. The returned value is 'true', if and only if the stored value is not "false".
int getInt(
const std::string & name
) const;
Returns the attribute's value as an integer.
Throws a Poco::NotFoundException if the attribute does not exist. Throws a Poco::SyntaxException if the stored value is not an integer.
int getInt(
const std::string & name,
int defaultValue
) const;
Returns the attribute's value as an integer, if it exists. Returns the defaultValue if the attribute does not exist.
Throws a Poco::SyntaxException if the stored value is not an integer.
std::string getString(
const std::string & name
) const;
Returns the attribute's value as a string.
Throws a Poco::NotFoundException if the attribute does not exist.
std::string getString(
const std::string & name,
const std::string & defaultValue
) const;
Returns the attribute's value as a string, if it exists. Returns the defaultValue if the attribute does not exist.
bool has(
const std::string & name
) const;
Returns true if an attribute with the given name exists.
Attributes & operator = (
const Attributes & attrs
);
Assignment operator.
const std::string & operator[] (
const std::string & name
) const;
std::string & operator[] (
const std::string & name
);
void remove(
const std::string & name
);
Removes the attribute with the given name. Does nothing if the attribute does not exist.
void set(
const std::string & name,
const std::string & value
);
Sets the value of an attribute.