*
* Libmemcached library
*
- * Copyright (C) 2011 Data Differential, http://datadifferential.com/
+ * Copyright (C) 2011-2013 Data Differential, http://datadifferential.com/
* Copyright (C) 2006-2009 Brian Aker All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
#include <libmemcached/common.h>
static inline void _result_init(memcached_result_st *self,
- memcached_st *memc)
+ Memcached *memc)
{
self->item_flags= 0;
self->item_expiration= 0;
self->key_length= 0;
self->item_cas= 0;
self->root= memc;
+ self->numeric_value= UINT64_MAX;
self->count= 0;
self->item_key[0]= 0;
}
-memcached_result_st *memcached_result_create(const memcached_st *memc,
+memcached_result_st *memcached_result_create(const memcached_st *shell,
memcached_result_st *ptr)
{
- WATCHPOINT_ASSERT(memc);
+ const Memcached* memc= memcached2Memcached(shell);
/* Saving malloc calls :) */
if (ptr)
ptr->item_flags= 0;
ptr->item_cas= 0;
ptr->item_expiration= 0;
+ ptr->numeric_value= UINT64_MAX;
}
void memcached_result_free(memcached_result_st *ptr)
}
memcached_string_free(&ptr->value);
+ ptr->numeric_value= UINT64_MAX;
if (memcached_is_allocated(ptr))
{
}
}
+void memcached_result_reset_value(memcached_result_st *ptr)
+{
+ memcached_string_reset(&ptr->value);
+}
+
memcached_return_t memcached_result_set_value(memcached_result_st *ptr,
const char *value,
size_t length)
return memcached_string_length(sptr);
}
+char *memcached_result_take_value(memcached_result_st *self)
+{
+ memcached_string_st *sptr= &self->value;
+ return memcached_string_take_value(sptr);
+}
+
uint32_t memcached_result_flags(const memcached_result_st *self)
{
return self->item_flags;