#define db_op_equal
//Operation to test equality

var arg;

if(is_real(argument0)) {arg = real(ds_list_find_value(argument1,0))}
else {arg = ds_list_find_value(argument1,0);}

return argument0 == arg;

#define db_op_gt
//Operation to test if a value in the db is greater than the provided value

var arg;

if(is_real(argument0)) {arg = real(ds_list_find_value(argument1,0))}
else {arg = ds_list_find_value(argument1,0);}

return argument0 > arg;

#define db_op_gte
//Operation to test if a value in the db is greater than or equal to the provided value

var arg;

if(is_real(argument0)) {arg = real(ds_list_find_value(argument1,0))}
else {arg = ds_list_find_value(argument1,0);}

return argument0 >= arg;

#define db_op_lt
//Operation to test if a value in the db is less than the provided value

var arg;

if(is_real(argument0)) {arg = real(ds_list_find_value(argument1,0))}
else {arg = ds_list_find_value(argument1,0);}

return argument0 < arg;

#define db_op_lte
//Operation to test if a value in the db is less than or equal to the provided value

var arg;

if(is_real(argument0)) {arg = real(ds_list_find_value(argument1,0))}
else {arg = ds_list_find_value(argument1,0);}

return argument0 < arg;

#define db_op_between
//Operation to test if a value in the db is between two values (inluding the values themselves)

var arg1,arg2;

if(is_real(argument0)) {
    arg1 = real(ds_list_find_value(argument1,0));
    arg2 = real(ds_list_find_value(argument1,1));
}
else {
    arg1 = ds_list_find_value(argument1,0);
    arg2 = ds_list_find_value(argument1,1);
}



return argument0 >= arg1 && argument0 <= arg2;

#define db_op_not_equal
//Operation to test difference

var arg;

if(is_real(argument0)) {arg = real(ds_list_find_value(argument1,0))}
else {arg = ds_list_find_value(argument1,0);}

return argument0 != arg;

