better support for booleans
This commit is contained in:
12
parser.h
12
parser.h
@@ -141,7 +141,7 @@ namespace usql {
|
||||
|
||||
long getIntegerValue() override { return value; };
|
||||
double getDoubleValue() override { return (double) value; };
|
||||
std::string getStringValue() override { return std::to_string(value); }
|
||||
std::string getStringValue() override { return Settings::int_to_string(value); }
|
||||
long getDateValue() override { return value; };
|
||||
bool getBooleanValue() override { return value != 0; };
|
||||
};
|
||||
@@ -153,7 +153,7 @@ namespace usql {
|
||||
|
||||
long getIntegerValue() override { return (long) value; };
|
||||
double getDoubleValue() override { return value; };
|
||||
std::string getStringValue() override { return std::to_string(value); }
|
||||
std::string getStringValue() override { return Settings::double_to_string(value); }
|
||||
long getDateValue() override { return (long) value; };
|
||||
bool getBooleanValue() override { return value != 0.0; };
|
||||
};
|
||||
@@ -163,11 +163,11 @@ namespace usql {
|
||||
|
||||
explicit StringValueNode(const std::string &value) : ValueNode(NodeType::string_value), value(value) {}
|
||||
|
||||
long getIntegerValue() override { return std::stoi(value); };
|
||||
double getDoubleValue() override { return std::stod(value); };
|
||||
long getIntegerValue() override { return Settings::string_to_int(value); };
|
||||
double getDoubleValue() override { return Settings::string_to_double(value); };
|
||||
std::string getStringValue() override { return value; };
|
||||
long getDateValue() override { return Settings::string_to_date(value); };
|
||||
bool getBooleanValue() override { return value == "true"; };
|
||||
bool getBooleanValue() override { return Settings::string_to_bool(value); };
|
||||
};
|
||||
|
||||
struct BooleanValueNode : ValueNode {
|
||||
@@ -177,7 +177,7 @@ namespace usql {
|
||||
|
||||
long getIntegerValue() override { return (long) value; };
|
||||
double getDoubleValue() override { return (double) value; };
|
||||
std::string getStringValue() override { return value ? "true" : "false"; }
|
||||
std::string getStringValue() override { return Settings::bool_to_string(value); }
|
||||
long getDateValue() override { return (long) value; };
|
||||
bool getBooleanValue() override { return value; };
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user