summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorarseny.kapoulkine <arseny.kapoulkine@99668b35-9821-0410-8761-19e4c4f06640>2009-09-17 18:02:21 +0000
committerarseny.kapoulkine <arseny.kapoulkine@99668b35-9821-0410-8761-19e4c4f06640>2009-09-17 18:02:21 +0000
commit01d8a2405191b931cc44e18ec5379e9846b45849 (patch)
tree946688782631ec9c57b9fcc7989ef7a48bd875e0
parent3a9e08becd09470d7e605795d76bf7a54fc45280 (diff)
Added xml_attribute::set_value overloads
git-svn-id: http://pugixml.googlecode.com/svn/trunk@127 99668b35-9821-0410-8761-19e4c4f06640
-rw-r--r--src/pugixml.cpp40
-rw-r--r--src/pugixml.hpp32
2 files changed, 62 insertions, 10 deletions
diff --git a/src/pugixml.cpp b/src/pugixml.cpp
index 2bb0b7b..c1797c5 100644
--- a/src/pugixml.cpp
+++ b/src/pugixml.cpp
@@ -1875,31 +1875,25 @@ namespace pugi
xml_attribute& xml_attribute::operator=(int rhs)
{
- char buf[128];
- sprintf(buf, "%d", rhs);
- set_value(buf);
+ set_value(rhs);
return *this;
}
xml_attribute& xml_attribute::operator=(unsigned int rhs)
{
- char buf[128];
- sprintf(buf, "%u", rhs);
- set_value(buf);
+ set_value(rhs);
return *this;
}
xml_attribute& xml_attribute::operator=(double rhs)
{
- char buf[128];
- sprintf(buf, "%g", rhs);
- set_value(buf);
+ set_value(rhs);
return *this;
}
xml_attribute& xml_attribute::operator=(bool rhs)
{
- set_value(rhs ? "true" : "false");
+ set_value(rhs);
return *this;
}
@@ -1925,6 +1919,32 @@ namespace pugi
return res;
}
+ bool xml_attribute::set_value(int rhs)
+ {
+ char buf[128];
+ sprintf(buf, "%d", rhs);
+ return set_value(buf);
+ }
+
+ bool xml_attribute::set_value(unsigned int rhs)
+ {
+ char buf[128];
+ sprintf(buf, "%u", rhs);
+ return set_value(buf);
+ }
+
+ bool xml_attribute::set_value(double rhs)
+ {
+ char buf[128];
+ sprintf(buf, "%g", rhs);
+ return set_value(buf);
+ }
+
+ bool xml_attribute::set_value(bool rhs)
+ {
+ return set_value(rhs ? "true" : "false");
+ }
+
#ifdef __BORLANDC__
bool operator&&(const xml_attribute& lhs, bool rhs)
{
diff --git a/src/pugixml.hpp b/src/pugixml.hpp
index 6228b79..0b14148 100644
--- a/src/pugixml.hpp
+++ b/src/pugixml.hpp
@@ -583,6 +583,38 @@ namespace pugi
*/
bool set_value(const char* rhs);
+ /**
+ * Set attribute value to \a rhs.
+ *
+ * \param rhs - new attribute value
+ * \return success flag (call fails if attribute is empty or there is not enough memory)
+ */
+ bool set_value(int rhs);
+
+ /**
+ * Set attribute value to \a rhs.
+ *
+ * \param rhs - new attribute value
+ * \return success flag (call fails if attribute is empty or there is not enough memory)
+ */
+ bool set_value(unsigned int rhs);
+
+ /**
+ * Set attribute value to \a rhs.
+ *
+ * \param rhs - new attribute value
+ * \return success flag (call fails if attribute is empty or there is not enough memory)
+ */
+ bool set_value(double rhs);
+
+ /**
+ * Set attribute value to either 'true' or 'false' (depends on whether \a rhs is true or false).
+ *
+ * \param rhs - new attribute value
+ * \return success flag (call fails if attribute is empty or there is not enough memory)
+ */
+ bool set_value(bool rhs);
+
public:
/**
* Check if attribute is empty.