Mixing floats and ints is possible now!
parent
f0bc0e235b
commit
b75236096e
|
@ -106,6 +106,14 @@ SenchaObject SenchaObject::operator+(const SenchaObject& right)const
|
|||
break;
|
||||
}
|
||||
}
|
||||
else if(type == float_number && right.type == integer_number )
|
||||
{
|
||||
result.set_value(this->number + right.integer);
|
||||
}
|
||||
else if(type == integer_number && right.type == float_number)
|
||||
{
|
||||
result.set_value(this->integer + right.number);
|
||||
}
|
||||
else
|
||||
{
|
||||
result.type = invalid;
|
||||
|
@ -132,6 +140,14 @@ SenchaObject SenchaObject::operator-(const SenchaObject& right)const
|
|||
break;
|
||||
}
|
||||
}
|
||||
else if(type == float_number && right.type == integer_number )
|
||||
{
|
||||
result.set_value(this->number - right.integer);
|
||||
}
|
||||
else if(type == integer_number && right.type == float_number)
|
||||
{
|
||||
result.set_value(this->integer - right.number);
|
||||
}
|
||||
else
|
||||
{
|
||||
result.type = invalid;
|
||||
|
@ -157,6 +173,14 @@ SenchaObject SenchaObject::operator*(const SenchaObject& right)const
|
|||
break;
|
||||
}
|
||||
}
|
||||
else if(type == float_number && right.type == integer_number )
|
||||
{
|
||||
result.set_value(this->number * right.integer);
|
||||
}
|
||||
else if(type == integer_number && right.type == float_number)
|
||||
{
|
||||
result.set_value(this->integer * right.number);
|
||||
}
|
||||
else
|
||||
{
|
||||
result.type = invalid;
|
||||
|
@ -182,6 +206,14 @@ SenchaObject SenchaObject::operator/(const SenchaObject& right)const
|
|||
break;
|
||||
}
|
||||
}
|
||||
else if(type == float_number && right.type == integer_number )
|
||||
{
|
||||
result.set_value(this->number / right.integer);
|
||||
}
|
||||
else if(type == integer_number && right.type == float_number)
|
||||
{
|
||||
result.set_value(this->integer / right.number);
|
||||
}
|
||||
else
|
||||
{
|
||||
result.type = invalid;
|
||||
|
@ -191,7 +223,7 @@ SenchaObject SenchaObject::operator/(const SenchaObject& right)const
|
|||
}
|
||||
|
||||
SenchaObject SenchaObject::operator==(const SenchaObject& right)const
|
||||
{
|
||||
{
|
||||
SenchaObject result;
|
||||
bool value = false;
|
||||
result.type = boolean;
|
||||
|
@ -219,12 +251,13 @@ SenchaObject SenchaObject::operator==(const SenchaObject& right)const
|
|||
break;
|
||||
}
|
||||
}
|
||||
|
||||
result.truthy = value;
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
SenchaObject SenchaObject::operator!=(const SenchaObject& right)const
|
||||
{
|
||||
{
|
||||
SenchaObject result;
|
||||
result.type = boolean;
|
||||
|
||||
|
@ -234,6 +267,6 @@ SenchaObject SenchaObject::operator!=(const SenchaObject& right)const
|
|||
else result.truthy = true;
|
||||
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
//TODO change code above to something more generic
|
||||
|
|
Loading…
Reference in New Issue