Made FileNode::operator string inline

This commit is contained in:
Maksim Shabunin 2018-11-27 11:47:23 +03:00
parent 51cc78b2a2
commit 9de63c1edd
2 changed files with 4 additions and 6 deletions

View File

@ -565,7 +565,7 @@ public:
//! returns the node content as double
operator double() const;
//! returns the node content as text string
operator std::string() const;
inline operator std::string() const { return this->string(); }
static bool isMap(int flags);
static bool isSeq(int flags);
@ -599,7 +599,7 @@ public:
//! Simplified reading API to use with bindings.
CV_WRAP double real() const;
//! Simplified reading API to use with bindings.
CV_WRAP String string() const;
CV_WRAP std::string string() const;
//! Simplified reading API to use with bindings.
CV_WRAP Mat mat() const;

View File

@ -2197,7 +2197,8 @@ FileNode::operator double() const
return DBL_MAX;
}
FileNode::operator std::string() const
double FileNode::real() const { return double(*this); }
std::string FileNode::string() const
{
const uchar* p = ptr();
if( !p || (*p & TYPE_MASK) != STRING )
@ -2206,9 +2207,6 @@ FileNode::operator std::string() const
size_t sz = (size_t)(unsigned)readInt(p);
return std::string((const char*)(p + 4), sz - 1);
}
double FileNode::real() const { return double(*this); }
std::string FileNode::string() const { return std::string(*this); }
Mat FileNode::mat() const { Mat value; read(*this, value, Mat()); return value; }
FileNodeIterator FileNode::begin() const { return FileNodeIterator(*this, false); }