/** * Saffire method: Returns object stored at "key" inside the hash (or NULL when not found) */ SAFFIRE_METHOD(hash, find) { t_string_object *key; if (! object_parse_arguments(SAFFIRE_METHOD_ARGS, "s", &key)) { saffire_warning("Error while parsing argument list\n"); RETURN_NUMERICAL(0); } t_object *obj = ht_find(self->ht, key->value); if (obj == NULL) RETURN_NULL; RETURN_OBJECT(obj); }
SAFFIRE_OPERATOR_METHOD(numerical, sr) { t_numerical_object *self = (t_numerical_object *)_self; t_numerical_object *other; // Parse the arguments if (! object_parse_arguments(SAFFIRE_METHOD_ARGS, "n", &other)) { saffire_warning("Error while parsing argument list\n"); RETURN_NUMERICAL(0); } if (in_place) { DEBUG_PRINT("Add to self\n"); self->value >>= other->value; RETURN_SELF; } t_object *obj = object_new(Object_Numerical, self->value >> other->value); RETURN_OBJECT(obj); }
IMPLEMENT_FUNCTION(player, construct) { RETURN_OBJECT( HOST_DATA->Player_new(false) ); }
IMPLEMENT_FUNCTION(httprequest, construct) { RETURN_OBJECT( HOST_DATA->HttpRequest_new() ); }
IMPLEMENT_FUNCTION(database, construct) { RETURN_OBJECT( HOST_DATA->Database_new(ARG_STRING(0)) ); }
/** * Saffire method: Returns value */ SAFFIRE_METHOD(numerical, neg) { t_object *obj = object_new(Object_Numerical, 0 - self->value); RETURN_OBJECT(obj); }
/** * Saffire method: Returns value */ SAFFIRE_METHOD(numerical, abs) { t_object *obj = object_new(Object_Numerical, abs(self->value)); RETURN_OBJECT(obj); }