mirror of https://gitee.com/bigwinds/arangodb
fixed cloning of AST nodes
This commit is contained in:
parent
5f6964796e
commit
97206f8c30
|
@ -1018,20 +1018,25 @@ AstNode* Ast::clone (AstNode const* node) {
|
||||||
}
|
}
|
||||||
else if (type == NODE_TYPE_VALUE) {
|
else if (type == NODE_TYPE_VALUE) {
|
||||||
switch (node->value.type) {
|
switch (node->value.type) {
|
||||||
|
case VALUE_TYPE_NULL:
|
||||||
|
copy->value.type = VALUE_TYPE_NULL;
|
||||||
|
break;
|
||||||
case VALUE_TYPE_BOOL:
|
case VALUE_TYPE_BOOL:
|
||||||
|
copy->value.type = VALUE_TYPE_BOOL;
|
||||||
copy->setBoolValue(node->getBoolValue());
|
copy->setBoolValue(node->getBoolValue());
|
||||||
break;
|
break;
|
||||||
case VALUE_TYPE_INT:
|
case VALUE_TYPE_INT:
|
||||||
|
copy->value.type = VALUE_TYPE_INT;
|
||||||
copy->setIntValue(node->getIntValue());
|
copy->setIntValue(node->getIntValue());
|
||||||
break;
|
break;
|
||||||
case VALUE_TYPE_DOUBLE:
|
case VALUE_TYPE_DOUBLE:
|
||||||
|
copy->value.type = VALUE_TYPE_DOUBLE;
|
||||||
copy->setDoubleValue(node->getDoubleValue());
|
copy->setDoubleValue(node->getDoubleValue());
|
||||||
break;
|
break;
|
||||||
case VALUE_TYPE_STRING:
|
case VALUE_TYPE_STRING:
|
||||||
|
copy->value.type = VALUE_TYPE_STRING;
|
||||||
copy->setStringValue(node->getStringValue());
|
copy->setStringValue(node->getStringValue());
|
||||||
break;
|
break;
|
||||||
default: {
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue