summaryrefslogtreecommitdiffstats
path: root/src/uscxml/plugins/datamodel/xpath/XPathDataModel.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/uscxml/plugins/datamodel/xpath/XPathDataModel.cpp')
-rw-r--r--src/uscxml/plugins/datamodel/xpath/XPathDataModel.cpp13
1 files changed, 7 insertions, 6 deletions
diff --git a/src/uscxml/plugins/datamodel/xpath/XPathDataModel.cpp b/src/uscxml/plugins/datamodel/xpath/XPathDataModel.cpp
index 1af56b5..6b2f039 100644
--- a/src/uscxml/plugins/datamodel/xpath/XPathDataModel.cpp
+++ b/src/uscxml/plugins/datamodel/xpath/XPathDataModel.cpp
@@ -338,7 +338,7 @@ std::string XPathDataModel::evalAsString(const std::string& expr) {
case STRING:
return result.asString();
break;
- case BOOL:
+ case Arabica::XPath::BOOL: // MSVC croaks with ambiguous symbol without qualified name
return (result.asBool() ? "true" : "false");
break;
case NUMBER:
@@ -482,10 +482,11 @@ void XPathDataModel::init(const Element<std::string>& dataElem,
case STRING:
container.appendChild(_doc.createTextNode(expr.asString()));
break;
- case NUMBER:
+ case NUMBER: {
container.appendChild(_doc.createTextNode(toStr(expr.asNumber())));
break;
- case BOOL:
+ }
+ case Arabica::XPath::BOOL:
case ANY:
throw Event("error.execution", Event::PLATFORM);
}
@@ -531,7 +532,7 @@ void XPathDataModel::assign(const XPathValue<std::string>& key,
case STRING:
assign(key.asNodeSet(), value.asString(), assignElem);
break;
- case BOOL:
+ case Arabica::XPath::BOOL:
assign(key.asNodeSet(), value.asBool(), assignElem);
break;
case NUMBER:
@@ -546,7 +547,7 @@ void XPathDataModel::assign(const XPathValue<std::string>& key,
break;
}
case STRING:
- case BOOL:
+ case Arabica::XPath::BOOL:
case NUMBER:
case ANY:
throw Event("error.execution", Event::PLATFORM);
@@ -564,7 +565,7 @@ void XPathDataModel::assign(const XPathValue<std::string>& key,
break;
}
case STRING:
- case BOOL:
+ case Arabica::XPath::BOOL:
case NUMBER:
case ANY:
throw Event("error.execution", Event::PLATFORM);