mirror of
https://github.com/sam-astro/Z-Sharp.git
synced 2025-12-11 16:22:12 +00:00
Allow for single args as bool ex. if 3 instead of if 3 == 3
This commit is contained in:
parent
e0966a7920
commit
1ad7019940
@ -279,8 +279,10 @@ boost::any EvalExpression(const string& ex, unordered_map<string, boost::any>& v
|
|||||||
|
|
||||||
bool BooleanLogic(const string& valA, const string& determinant, const string& valB, unordered_map<string, boost::any>& variableValues)
|
bool BooleanLogic(const string& valA, const string& determinant, const string& valB, unordered_map<string, boost::any>& variableValues)
|
||||||
{
|
{
|
||||||
boost::any valARealValue = EvalExpression(valA, variableValues);
|
if(valA)
|
||||||
boost::any valBRealValue = EvalExpression(valB, variableValues);
|
boost::any valARealValue = EvalExpression(valA, variableValues);
|
||||||
|
if(valB)
|
||||||
|
boost::any valBRealValue = EvalExpression(valB, variableValues);
|
||||||
#if DEVELOPER_MESSAGES == true
|
#if DEVELOPER_MESSAGES == true
|
||||||
InterpreterLog(AnyAsString(valARealValue) + " " + determinant + " " + AnyAsString(valBRealValue) + " : " + AnyAsString(valA) + " " + determinant + " " + AnyAsString(valB) + " : " + to_string(AnyAsString(valARealValue) == AnyAsString(valBRealValue)));
|
InterpreterLog(AnyAsString(valARealValue) + " " + determinant + " " + AnyAsString(valBRealValue) + " : " + AnyAsString(valA) + " " + determinant + " " + AnyAsString(valB) + " : " + to_string(AnyAsString(valARealValue) == AnyAsString(valBRealValue)));
|
||||||
#endif
|
#endif
|
||||||
@ -296,6 +298,8 @@ bool BooleanLogic(const string& valA, const string& determinant, const string& v
|
|||||||
return AnyAsFloat(valARealValue) > AnyAsFloat(valBRealValue);
|
return AnyAsFloat(valARealValue) > AnyAsFloat(valBRealValue);
|
||||||
else if (determinant == "<")
|
else if (determinant == "<")
|
||||||
return AnyAsFloat(valARealValue) < AnyAsFloat(valBRealValue);
|
return AnyAsFloat(valARealValue) < AnyAsFloat(valBRealValue);
|
||||||
|
else if (determinant == "")
|
||||||
|
return AnyAsBool(valARealValue) == true;
|
||||||
else
|
else
|
||||||
LogWarning("unrecognized determinant \'" + determinant + "\'");
|
LogWarning("unrecognized determinant \'" + determinant + "\'");
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user