Hello, maybe 'efl_ref_replace' since its a replacement of a referenced field.
Greetings Marcel Hollerbach On Mon, Dec 05, 2016 at 12:16:15PM -0200, Guilherme Íscaro wrote: > Hello, > > Well, what name do you suggest? > > On Mon, Dec 5, 2016 at 11:50 AM, Tom Hacohen <t...@osg.samsung.com> wrote: > > > I never liked the stringshare function that does it, so it comes with no > > surprise that I don't like this one either. > > > > Regardless of that, I find the name very confusing. I didn't understand > > what it does when I saw the name nor when I read the docs. I had to read > > the code to understand what it's for... I'd change the name and fix the > > docs. > > > > -- > > Tom. > > > > On 02/12/16 17:35, Guilherme Iscaro wrote: > > > bdilly pushed a commit to branch master. > > > > > > http://git.enlightenment.org/core/efl.git/commit/?id= > > 81782414dfba9a8a69ea42a4dd5b01fc19170d88 > > > > > > commit 81782414dfba9a8a69ea42a4dd5b01fc19170d88 > > > Author: Guilherme Iscaro <isc...@profusion.mobi> > > > Date: Fri Dec 2 11:16:33 2016 -0200 > > > > > > Eo: Add efl_replace() function. > > > > > > This new function adds a new way to safely replace Eo pointer values. > > > --- > > > src/lib/eo/Eo.h | 22 ++++++++++++++++++++++ > > > 1 file changed, 22 insertions(+) > > > > > > diff --git a/src/lib/eo/Eo.h b/src/lib/eo/Eo.h > > > index 8c81544..244478b 100644 > > > --- a/src/lib/eo/Eo.h > > > +++ b/src/lib/eo/Eo.h > > > @@ -1334,6 +1334,28 @@ EAPI int efl_callbacks_cmp(const > > Efl_Callback_Array_Item *a, const Efl_Callback_ > > > EFL_CALLBACK_PRIORITY_DEFAULT, data) > > > > > > /** > > > + * @def Replace the previously Eo pointer with new content. > > > + * > > > + * @param storage The object to replace the old reference. It can not > > be @c NULL. > > > + * @param new_obj The new object. It may be @c NULL. > > > + * > > > + * The string pointed by @c storage must be previously an Eo or > > > + * @c NULL and it will be efl_unref(). The @a new_obj will be passed > > > + * to efl_ref() and then assigned to @c *storage. > > > + * > > > + * @see efl_ref() > > > + * @see efl_unref() > > > + */ > > > +static inline void > > > +efl_replace(Eo **storage, Eo *new_obj) > > > +{ > > > + if (!storage || *storage == new_obj) return; > > > + efl_ref(new_obj); > > > + efl_unref(*storage); > > > + *storage = new_obj; > > > +} > > > + > > > +/** > > > * @} > > > */ > > > > > > > > > > > > ------------------------------------------------------------ > > ------------------ > > _______________________________________________ > > enlightenment-devel mailing list > > enlightenment-devel@lists.sourceforge.net > > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel > > > ------------------------------------------------------------------------------ > _______________________________________________ > enlightenment-devel mailing list > enlightenment-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/enlightenment-devel ------------------------------------------------------------------------------ _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel