On Fri, 18 Jul 2014 04:59:05 +0100 Tom Hacohen <tom.haco...@samsung.com> said:

> On 18/07/14 04:48, Carsten Haitzler (The Rasterman) wrote:
> > On Tue, 8 Jul 2014 14:16:41 +0200 Jérémy Zurcher <jer...@asynk.ch> said:
> >
> >> original thread is: [e-users] Func 'edje_obj_signal_emit' unknown in class
> >> 'Evas_Smart'
> >>
> >> On Tuesday 08 July 2014  20:18, Carsten Haitzler wrote :
> >>> On Tue, 8 Jul 2014 10:32:24 +0200 Jérémy Zurcher <jer...@asynk.ch> said:
> >>>>
> >>>> shouldn't we even add WRN() to eo_do(NULL, ... ) calls ??
> >>>> loads of them in elm because of NULL wd->resize_obj.
> >>>
> >>> nah - it's one thing calling an unsupported method on an object - you
> >>> intended for the obj to do X or Y. for a null object - no object, there
> >>> simply is nothing to do. it's barely an issue. i'd say its not valuable to
> >>> say anything.
> >>>
> >>
> >> there is nothing to do, but we do a lot,
> >> set an eo call stack frame with NULL in it,
> >> go through all function calls, returning default value at _eo_call_resolve
> >> () free the call stack frame.
> >>
> >> a side effect of the will to be able to write: a = eo_do(obj, a_get());
> >> http://git.enlightenment.org/core/efl.git/commit/?id=d77a7ce4
> >
> > i thought that eo_do by definition has no return... in the macros it doesnt
> > indicate it has one and doesn't document a reutnr - so that shouldn't work.
> > imho eo_do(NULL ...) should just instantly return with no further action.
> >
> 
> Things have improved over the last few months. First of all, it's now 
> perfect legal to call:
> a = eo_do(obj, a_get());

i thought you had to do:

eo_do(obj, a = a_get());

?

it doesn't sound good to me to make this legal... ?

> Iirc a = eo_do(obj, a_get(), b = b_get()); is also legal, but I'll have 
> to check.
> 
> As for the matter at hand, eo_do does need to do things with 
> NULL/illegal objects so you don't have uninitialized value. That is:
> eo_do(NULL, a = a_get());
> 
> Sets a to the default return value defined when defining a_get. This 
> ensures that a will always be initialized no matter what object passed. 
> This allows us to use a similar style of coding to what we do at the 
> moment, with just passing null objects to functions and expecting 
> reasonable return vals.
> 
> --
> Tom.
> 
> 
> 
> 
> ------------------------------------------------------------------------------
> Want fast and easy access to all the code in your enterprise? Index and
> search up to 200,000 lines of code with a free copy of Black Duck
> Code Sight - the same software that powers the world's largest code
> search on Ohloh, the Black Duck Open Hub! Try it now.
> http://p.sf.net/sfu/bds
> _______________________________________________
> enlightenment-devel mailing list
> enlightenment-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel


-- 
------------- Codito, ergo sum - "I code, therefore I am" --------------
The Rasterman (Carsten Haitzler)    ras...@rasterman.com


------------------------------------------------------------------------------
Want fast and easy access to all the code in your enterprise? Index and
search up to 200,000 lines of code with a free copy of Black Duck
Code Sight - the same software that powers the world's largest code
search on Ohloh, the Black Duck Open Hub! Try it now.
http://p.sf.net/sfu/bds
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to