Re: [E-devel] Blog about EO
Daniel Kolesa wrote on Thu 11/09/14 12:09: 2014-09-11 12:00 GMT+01:00 Jean Rene Dawin jda...@math.uni-bielefeld.de: On Mon, Sep 08, 2014 at 04:42:04PM +0300, Daniel Zaoui wrote: Hi, On 09/08/14 16:16, Jean Rene Dawin wrote: On Sat, Aug 16, 2014 at 02:36:10PM +0900, Carsten Haitzler wrote: About time i got back to blogging about EFL etc. https://phab.enlightenment.org/phame/live/1//post/yet_another_c_object_model_but_better/ Hi, thanks for the explanations. Trying to reproduce the steps, the result of my tst.c differd a bit, though. I didn't get EOLIAN static void _tst_eo_base_constructor(Eo *obj, Tst_Data *pd) { eo_do_super(obj, TST_CLASS, eo_constructor()); } EOLIAN static void _tst_eo_base_destructor(Eo *obj, Tst_Data *pd) { eo_do_super(obj, TST_CLASS, eo_destructor()); } but instead EOLIAN static void _tst_class_constructor(Eo_Class *klass) { } EOLIAN static void _tst_class_destructor(Eo_Class *klass) { } Is there a more detailed documentation of the Eo-Syntax and API somewhere? Becuase the one on docs.enlightenment.org is not so verbose or maybe outdated. Is this because there will be more changes to Eo and things are not fixed yet? Thanks for your help, Jean Rene Dawin You should try with Base.constructor instead of class.constructor (same for the destructor). You can look at https://phab.enlightenment.org/w/eolian/ for more docs on the syntax. One of all the EFL Daniels Hi, thanks for the answers. The site you mentioned is indeed very informative about eo-file syntax. But what I'm more interested in is the whole mechanics of eo_add, eo_do and eo_add_custom and all those functions. For example I tried to do this #define EFL_BETA_API_SUPPORT #define EFL_EO_API_SUPPORT #include Elementary.h EAPI_MAIN int elm_main(int argc, char **argv){ eo_init(); Eo *win = eo_add(ELM_WIN_CLASS, NULL); eo_do(win, elm_obj_win_title_set(Nikotinamiddinukleotidphosphat) ); elm_run(); return 0; } ELM_MAIN() and while it compiled fine it threw runtime errors like ERR818:eo lib/eo/eo.c:1572 eo_error_set_internal() Error with obj '0x9500b30' at elm_win.c:3510. ERR818:elementary elm_win.c:3511 _elm_win_eo_base_constructor() only custom constructor can be used with 'Elm_Win' class ERR818:eo lib/eo/eo.c:953 _eo_add_internal_end() Object of class 'Elm_Win' - Not all of the object constructors have been executed. as I'm obviously using Eo/Elementary in a wrong manner, but I find it quite hard to understand from the source files like Eo.h, how it would be done the right way. So, I guess I will have to try harder :) You're supposed to use elm_win_add at this point to create the object. The base constructor is explicitly overloaded to trigger this error. Alternatively, you can use eo_add_custom(ELM_WIN_CLASS, NULL, elm_obj_win_constructor(foo, ELM_WIN_BASIC));. But that's pretty much identical to what the elm_win_add function does. Ah, ok. Does at this point mean at the current state of the Eo implementation for Elementary? Is it planned to replace functions like evas_object_show() with Eo style functions, or are they planned to coexist? Thanks for the explanations, Jean Rene Dawin -- Want excitement? Manually upgrade your production database. When you want reliability, choose Perforce Perforce version control. Predictably reliable. http://pubads.g.doubleclick.net/gampad/clk?id=157508191iu=/4140/ostg.clktrk ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Blog about EO
2014-09-12 14:11 GMT+01:00 Jean Rene Dawin jda...@math.uni-bielefeld.de: Daniel Kolesa wrote on Thu 11/09/14 12:09: 2014-09-11 12:00 GMT+01:00 Jean Rene Dawin jda...@math.uni-bielefeld.de : On Mon, Sep 08, 2014 at 04:42:04PM +0300, Daniel Zaoui wrote: Hi, On 09/08/14 16:16, Jean Rene Dawin wrote: On Sat, Aug 16, 2014 at 02:36:10PM +0900, Carsten Haitzler wrote: About time i got back to blogging about EFL etc. https://phab.enlightenment.org/phame/live/1//post/yet_another_c_object_model_but_better/ Hi, thanks for the explanations. Trying to reproduce the steps, the result of my tst.c differd a bit, though. I didn't get EOLIAN static void _tst_eo_base_constructor(Eo *obj, Tst_Data *pd) { eo_do_super(obj, TST_CLASS, eo_constructor()); } EOLIAN static void _tst_eo_base_destructor(Eo *obj, Tst_Data *pd) { eo_do_super(obj, TST_CLASS, eo_destructor()); } but instead EOLIAN static void _tst_class_constructor(Eo_Class *klass) { } EOLIAN static void _tst_class_destructor(Eo_Class *klass) { } Is there a more detailed documentation of the Eo-Syntax and API somewhere? Becuase the one on docs.enlightenment.org is not so verbose or maybe outdated. Is this because there will be more changes to Eo and things are not fixed yet? Thanks for your help, Jean Rene Dawin You should try with Base.constructor instead of class.constructor (same for the destructor). You can look at https://phab.enlightenment.org/w/eolian/ for more docs on the syntax. One of all the EFL Daniels Hi, thanks for the answers. The site you mentioned is indeed very informative about eo-file syntax. But what I'm more interested in is the whole mechanics of eo_add, eo_do and eo_add_custom and all those functions. For example I tried to do this #define EFL_BETA_API_SUPPORT #define EFL_EO_API_SUPPORT #include Elementary.h EAPI_MAIN int elm_main(int argc, char **argv){ eo_init(); Eo *win = eo_add(ELM_WIN_CLASS, NULL); eo_do(win, elm_obj_win_title_set(Nikotinamiddinukleotidphosphat) ); elm_run(); return 0; } ELM_MAIN() and while it compiled fine it threw runtime errors like ERR818:eo lib/eo/eo.c:1572 eo_error_set_internal() Error with obj '0x9500b30' at elm_win.c:3510. ERR818:elementary elm_win.c:3511 _elm_win_eo_base_constructor() only custom constructor can be used with 'Elm_Win' class ERR818:eo lib/eo/eo.c:953 _eo_add_internal_end() Object of class 'Elm_Win' - Not all of the object constructors have been executed. as I'm obviously using Eo/Elementary in a wrong manner, but I find it quite hard to understand from the source files like Eo.h, how it would be done the right way. So, I guess I will have to try harder :) You're supposed to use elm_win_add at this point to create the object. The base constructor is explicitly overloaded to trigger this error. Alternatively, you can use eo_add_custom(ELM_WIN_CLASS, NULL, elm_obj_win_constructor(foo, ELM_WIN_BASIC));. But that's pretty much identical to what the elm_win_add function does. Ah, ok. Does at this point mean at the current state of the Eo implementation for Elementary? Is it planned to replace functions like evas_object_show() with Eo style functions, or are they planned to coexist? The idea is to in the end completely redesign the EFL API using Eo (in EFL 2.0). Legacy functions like evas_object_show will stay in form of wrappers around the new Eo API for compatibility purposes only. Thanks for the explanations, Jean Rene Dawin -- Want excitement? Manually upgrade your production database. When you want reliability, choose Perforce Perforce version control. Predictably reliable. http://pubads.g.doubleclick.net/gampad/clk?id=157508191iu=/4140/ostg.clktrk ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- Want excitement? Manually upgrade your production database. When you want reliability, choose Perforce Perforce version control. Predictably reliable. http://pubads.g.doubleclick.net/gampad/clk?id=157508191iu=/4140/ostg.clktrk ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Blog about EO
On 12/09/14 14:11, Jean Rene Dawin wrote: Daniel Kolesa wrote on Thu 11/09/14 12:09: 2014-09-11 12:00 GMT+01:00 Jean Rene Dawin jda...@math.uni-bielefeld.de: On Mon, Sep 08, 2014 at 04:42:04PM +0300, Daniel Zaoui wrote: Hi, On 09/08/14 16:16, Jean Rene Dawin wrote: On Sat, Aug 16, 2014 at 02:36:10PM +0900, Carsten Haitzler wrote: About time i got back to blogging about EFL etc. https://phab.enlightenment.org/phame/live/1//post/yet_another_c_object_model_but_better/ Hi, thanks for the explanations. Trying to reproduce the steps, the result of my tst.c differd a bit, though. I didn't get EOLIAN static void _tst_eo_base_constructor(Eo *obj, Tst_Data *pd) { eo_do_super(obj, TST_CLASS, eo_constructor()); } EOLIAN static void _tst_eo_base_destructor(Eo *obj, Tst_Data *pd) { eo_do_super(obj, TST_CLASS, eo_destructor()); } but instead EOLIAN static void _tst_class_constructor(Eo_Class *klass) { } EOLIAN static void _tst_class_destructor(Eo_Class *klass) { } Is there a more detailed documentation of the Eo-Syntax and API somewhere? Becuase the one on docs.enlightenment.org is not so verbose or maybe outdated. Is this because there will be more changes to Eo and things are not fixed yet? Thanks for your help, Jean Rene Dawin You should try with Base.constructor instead of class.constructor (same for the destructor). You can look at https://phab.enlightenment.org/w/eolian/ for more docs on the syntax. One of all the EFL Daniels Hi, thanks for the answers. The site you mentioned is indeed very informative about eo-file syntax. But what I'm more interested in is the whole mechanics of eo_add, eo_do and eo_add_custom and all those functions. For example I tried to do this #define EFL_BETA_API_SUPPORT #define EFL_EO_API_SUPPORT #include Elementary.h EAPI_MAIN int elm_main(int argc, char **argv){ eo_init(); Eo *win = eo_add(ELM_WIN_CLASS, NULL); eo_do(win, elm_obj_win_title_set(Nikotinamiddinukleotidphosphat) ); elm_run(); return 0; } ELM_MAIN() and while it compiled fine it threw runtime errors like ERR818:eo lib/eo/eo.c:1572 eo_error_set_internal() Error with obj '0x9500b30' at elm_win.c:3510. ERR818:elementary elm_win.c:3511 _elm_win_eo_base_constructor() only custom constructor can be used with 'Elm_Win' class ERR818:eo lib/eo/eo.c:953 _eo_add_internal_end() Object of class 'Elm_Win' - Not all of the object constructors have been executed. as I'm obviously using Eo/Elementary in a wrong manner, but I find it quite hard to understand from the source files like Eo.h, how it would be done the right way. So, I guess I will have to try harder :) You're supposed to use elm_win_add at this point to create the object. The base constructor is explicitly overloaded to trigger this error. Alternatively, you can use eo_add_custom(ELM_WIN_CLASS, NULL, elm_obj_win_constructor(foo, ELM_WIN_BASIC));. But that's pretty much identical to what the elm_win_add function does. Ah, ok. Does at this point mean at the current state of the Eo implementation for Elementary? Is it planned to replace functions like evas_object_show() with Eo style functions, or are they planned to coexist? Thanks for the explanations, Very good question. I'd first look at https://phab.enlightenment.org/w/efl_interfaces/ where I document my efforts. As for your question, many things will change. The first thing that will change is the functions themselves, for example redundant functions (part_text_set all over the place) will disappear and become just one function overridden for inheriting classes. Additionally, some functions will just die or completely replaced. We are trying to make things more property (set/get clones) oriented to more bindable. All of this should be getting there with time. As for the current EFL API, e.g. evas_object_show, it'll co-exist for a while. It'll die once we switch to EFL 2.0. -- Tom. -- Want excitement? Manually upgrade your production database. When you want reliability, choose Perforce Perforce version control. Predictably reliable. http://pubads.g.doubleclick.net/gampad/clk?id=157508191iu=/4140/ostg.clktrk ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Blog about EO
On Mon, Sep 08, 2014 at 04:42:04PM +0300, Daniel Zaoui wrote: Hi, On 09/08/14 16:16, Jean Rene Dawin wrote: On Sat, Aug 16, 2014 at 02:36:10PM +0900, Carsten Haitzler wrote: About time i got back to blogging about EFL etc. https://phab.enlightenment.org/phame/live/1//post/yet_another_c_object_model_but_better/ Hi, thanks for the explanations. Trying to reproduce the steps, the result of my tst.c differd a bit, though. I didn't get EOLIAN static void _tst_eo_base_constructor(Eo *obj, Tst_Data *pd) { eo_do_super(obj, TST_CLASS, eo_constructor()); } EOLIAN static void _tst_eo_base_destructor(Eo *obj, Tst_Data *pd) { eo_do_super(obj, TST_CLASS, eo_destructor()); } but instead EOLIAN static void _tst_class_constructor(Eo_Class *klass) { } EOLIAN static void _tst_class_destructor(Eo_Class *klass) { } Is there a more detailed documentation of the Eo-Syntax and API somewhere? Becuase the one on docs.enlightenment.org is not so verbose or maybe outdated. Is this because there will be more changes to Eo and things are not fixed yet? Thanks for your help, Jean Rene Dawin You should try with Base.constructor instead of class.constructor (same for the destructor). You can look at https://phab.enlightenment.org/w/eolian/ for more docs on the syntax. One of all the EFL Daniels Hi, thanks for the answers. The site you mentioned is indeed very informative about eo-file syntax. But what I'm more interested in is the whole mechanics of eo_add, eo_do and eo_add_custom and all those functions. For example I tried to do this #define EFL_BETA_API_SUPPORT #define EFL_EO_API_SUPPORT #include Elementary.h EAPI_MAIN int elm_main(int argc, char **argv){ eo_init(); Eo *win = eo_add(ELM_WIN_CLASS, NULL); eo_do(win, elm_obj_win_title_set(Nikotinamiddinukleotidphosphat) ); elm_run(); return 0; } ELM_MAIN() and while it compiled fine it threw runtime errors like ERR818:eo lib/eo/eo.c:1572 eo_error_set_internal() Error with obj '0x9500b30' at elm_win.c:3510. ERR818:elementary elm_win.c:3511 _elm_win_eo_base_constructor() only custom constructor can be used with 'Elm_Win' class ERR818:eo lib/eo/eo.c:953 _eo_add_internal_end() Object of class 'Elm_Win' - Not all of the object constructors have been executed. as I'm obviously using Eo/Elementary in a wrong manner, but I find it quite hard to understand from the source files like Eo.h, how it would be done the right way. So, I guess I will have to try harder :) Regards, Jean Rne Dawin -- Want excitement? Manually upgrade your production database. When you want reliability, choose Perforce Perforce version control. Predictably reliable. http://pubads.g.doubleclick.net/gampad/clk?id=157508191iu=/4140/ostg.clktrk ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Blog about EO
2014-09-11 12:00 GMT+01:00 Jean Rene Dawin jda...@math.uni-bielefeld.de: On Mon, Sep 08, 2014 at 04:42:04PM +0300, Daniel Zaoui wrote: Hi, On 09/08/14 16:16, Jean Rene Dawin wrote: On Sat, Aug 16, 2014 at 02:36:10PM +0900, Carsten Haitzler wrote: About time i got back to blogging about EFL etc. https://phab.enlightenment.org/phame/live/1//post/yet_another_c_object_model_but_better/ Hi, thanks for the explanations. Trying to reproduce the steps, the result of my tst.c differd a bit, though. I didn't get EOLIAN static void _tst_eo_base_constructor(Eo *obj, Tst_Data *pd) { eo_do_super(obj, TST_CLASS, eo_constructor()); } EOLIAN static void _tst_eo_base_destructor(Eo *obj, Tst_Data *pd) { eo_do_super(obj, TST_CLASS, eo_destructor()); } but instead EOLIAN static void _tst_class_constructor(Eo_Class *klass) { } EOLIAN static void _tst_class_destructor(Eo_Class *klass) { } Is there a more detailed documentation of the Eo-Syntax and API somewhere? Becuase the one on docs.enlightenment.org is not so verbose or maybe outdated. Is this because there will be more changes to Eo and things are not fixed yet? Thanks for your help, Jean Rene Dawin You should try with Base.constructor instead of class.constructor (same for the destructor). You can look at https://phab.enlightenment.org/w/eolian/ for more docs on the syntax. One of all the EFL Daniels Hi, thanks for the answers. The site you mentioned is indeed very informative about eo-file syntax. But what I'm more interested in is the whole mechanics of eo_add, eo_do and eo_add_custom and all those functions. For example I tried to do this #define EFL_BETA_API_SUPPORT #define EFL_EO_API_SUPPORT #include Elementary.h EAPI_MAIN int elm_main(int argc, char **argv){ eo_init(); Eo *win = eo_add(ELM_WIN_CLASS, NULL); eo_do(win, elm_obj_win_title_set(Nikotinamiddinukleotidphosphat) ); elm_run(); return 0; } ELM_MAIN() and while it compiled fine it threw runtime errors like ERR818:eo lib/eo/eo.c:1572 eo_error_set_internal() Error with obj '0x9500b30' at elm_win.c:3510. ERR818:elementary elm_win.c:3511 _elm_win_eo_base_constructor() only custom constructor can be used with 'Elm_Win' class ERR818:eo lib/eo/eo.c:953 _eo_add_internal_end() Object of class 'Elm_Win' - Not all of the object constructors have been executed. as I'm obviously using Eo/Elementary in a wrong manner, but I find it quite hard to understand from the source files like Eo.h, how it would be done the right way. So, I guess I will have to try harder :) You're supposed to use elm_win_add at this point to create the object. The base constructor is explicitly overloaded to trigger this error. Alternatively, you can use eo_add_custom(ELM_WIN_CLASS, NULL, elm_obj_win_constructor(foo, ELM_WIN_BASIC));. But that's pretty much identical to what the elm_win_add function does. Regards, Jean Rne Dawin -- Want excitement? Manually upgrade your production database. When you want reliability, choose Perforce Perforce version control. Predictably reliable. http://pubads.g.doubleclick.net/gampad/clk?id=157508191iu=/4140/ostg.clktrk ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel Another of the EFL Daniels aka D5 -- Want excitement? Manually upgrade your production database. When you want reliability, choose Perforce Perforce version control. Predictably reliable. http://pubads.g.doubleclick.net/gampad/clk?id=157508191iu=/4140/ostg.clktrk ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Blog about EO
Very nice!! :D On 9/8/14, Tom Hacohen tom.haco...@samsung.com wrote: On 08/09/14 14:50, Daniel Zaoui wrote: ReHi, On 09/08/14 16:42, Daniel Zaoui wrote: Hi, On 09/08/14 16:16, Jean Rene Dawin wrote: On Sat, Aug 16, 2014 at 02:36:10PM +0900, Carsten Haitzler wrote: About time i got back to blogging about EFL etc. https://phab.enlightenment.org/phame/live/1//post/yet_another_c_object_model_but_better/ Hi, thanks for the explanations. Trying to reproduce the steps, the result of my tst.c differd a bit, though. I didn't get EOLIAN static void _tst_eo_base_constructor(Eo *obj, Tst_Data *pd) { eo_do_super(obj, TST_CLASS, eo_constructor()); } EOLIAN static void _tst_eo_base_destructor(Eo *obj, Tst_Data *pd) { eo_do_super(obj, TST_CLASS, eo_destructor()); } but instead EOLIAN static void _tst_class_constructor(Eo_Class *klass) { } EOLIAN static void _tst_class_destructor(Eo_Class *klass) { } Is there a more detailed documentation of the Eo-Syntax and API somewhere? Becuase the one on docs.enlightenment.org is not so verbose or maybe outdated. Is this because there will be more changes to Eo and things are not fixed yet? Thanks for your help, Jean Rene Dawin -- Want excitement? Manually upgrade your production database. When you want reliability, choose Perforce Perforce version control. Predictably reliable. http://pubads.g.doubleclick.net/gampad/clk?id=157508191iu=/4140/ostg.clktrk ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel You should try with Base.constructor instead of class.constructor (same for the destructor). I meant Eo.Base.constructor. One important thing to mention is that while we try not to, we change the Eolian syntax every now and then. Same goes with some of the class names and hierarchy, so the blog post may not be a 1-1 to what's currently in. -- Tom. -- Want excitement? Manually upgrade your production database. When you want reliability, choose Perforce Perforce version control. Predictably reliable. http://pubads.g.doubleclick.net/gampad/clk?id=157508191iu=/4140/ostg.clktrk ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- -- Amitesh -- Want excitement? Manually upgrade your production database. When you want reliability, choose Perforce Perforce version control. Predictably reliable. http://pubads.g.doubleclick.net/gampad/clk?id=157508191iu=/4140/ostg.clktrk ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Blog about EO
On Sat, Aug 16, 2014 at 02:36:10PM +0900, Carsten Haitzler wrote: About time i got back to blogging about EFL etc. https://phab.enlightenment.org/phame/live/1//post/yet_another_c_object_model_but_better/ Hi, thanks for the explanations. Trying to reproduce the steps, the result of my tst.c differd a bit, though. I didn't get EOLIAN static void _tst_eo_base_constructor(Eo *obj, Tst_Data *pd) { eo_do_super(obj, TST_CLASS, eo_constructor()); } EOLIAN static void _tst_eo_base_destructor(Eo *obj, Tst_Data *pd) { eo_do_super(obj, TST_CLASS, eo_destructor()); } but instead EOLIAN static void _tst_class_constructor(Eo_Class *klass) { } EOLIAN static void _tst_class_destructor(Eo_Class *klass) { } Is there a more detailed documentation of the Eo-Syntax and API somewhere? Becuase the one on docs.enlightenment.org is not so verbose or maybe outdated. Is this because there will be more changes to Eo and things are not fixed yet? Thanks for your help, Jean Rene Dawin -- Want excitement? Manually upgrade your production database. When you want reliability, choose Perforce Perforce version control. Predictably reliable. http://pubads.g.doubleclick.net/gampad/clk?id=157508191iu=/4140/ostg.clktrk ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Blog about EO
Hi, On 09/08/14 16:16, Jean Rene Dawin wrote: On Sat, Aug 16, 2014 at 02:36:10PM +0900, Carsten Haitzler wrote: About time i got back to blogging about EFL etc. https://phab.enlightenment.org/phame/live/1//post/yet_another_c_object_model_but_better/ Hi, thanks for the explanations. Trying to reproduce the steps, the result of my tst.c differd a bit, though. I didn't get EOLIAN static void _tst_eo_base_constructor(Eo *obj, Tst_Data *pd) { eo_do_super(obj, TST_CLASS, eo_constructor()); } EOLIAN static void _tst_eo_base_destructor(Eo *obj, Tst_Data *pd) { eo_do_super(obj, TST_CLASS, eo_destructor()); } but instead EOLIAN static void _tst_class_constructor(Eo_Class *klass) { } EOLIAN static void _tst_class_destructor(Eo_Class *klass) { } Is there a more detailed documentation of the Eo-Syntax and API somewhere? Becuase the one on docs.enlightenment.org is not so verbose or maybe outdated. Is this because there will be more changes to Eo and things are not fixed yet? Thanks for your help, Jean Rene Dawin -- Want excitement? Manually upgrade your production database. When you want reliability, choose Perforce Perforce version control. Predictably reliable. http://pubads.g.doubleclick.net/gampad/clk?id=157508191iu=/4140/ostg.clktrk ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel You should try with Base.constructor instead of class.constructor (same for the destructor). You can look at https://phab.enlightenment.org/w/eolian/ for more docs on the syntax. One of all the EFL Daniels -- Want excitement? Manually upgrade your production database. When you want reliability, choose Perforce Perforce version control. Predictably reliable. http://pubads.g.doubleclick.net/gampad/clk?id=157508191iu=/4140/ostg.clktrk ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Blog about EO
ReHi, On 09/08/14 16:42, Daniel Zaoui wrote: Hi, On 09/08/14 16:16, Jean Rene Dawin wrote: On Sat, Aug 16, 2014 at 02:36:10PM +0900, Carsten Haitzler wrote: About time i got back to blogging about EFL etc. https://phab.enlightenment.org/phame/live/1//post/yet_another_c_object_model_but_better/ Hi, thanks for the explanations. Trying to reproduce the steps, the result of my tst.c differd a bit, though. I didn't get EOLIAN static void _tst_eo_base_constructor(Eo *obj, Tst_Data *pd) { eo_do_super(obj, TST_CLASS, eo_constructor()); } EOLIAN static void _tst_eo_base_destructor(Eo *obj, Tst_Data *pd) { eo_do_super(obj, TST_CLASS, eo_destructor()); } but instead EOLIAN static void _tst_class_constructor(Eo_Class *klass) { } EOLIAN static void _tst_class_destructor(Eo_Class *klass) { } Is there a more detailed documentation of the Eo-Syntax and API somewhere? Becuase the one on docs.enlightenment.org is not so verbose or maybe outdated. Is this because there will be more changes to Eo and things are not fixed yet? Thanks for your help, Jean Rene Dawin -- Want excitement? Manually upgrade your production database. When you want reliability, choose Perforce Perforce version control. Predictably reliable. http://pubads.g.doubleclick.net/gampad/clk?id=157508191iu=/4140/ostg.clktrk ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel You should try with Base.constructor instead of class.constructor (same for the destructor). I meant Eo.Base.constructor. You can look at https://phab.enlightenment.org/w/eolian/ for more docs on the syntax. One of all the EFL Daniels -- Want excitement? Manually upgrade your production database. When you want reliability, choose Perforce Perforce version control. Predictably reliable. http://pubads.g.doubleclick.net/gampad/clk?id=157508191iu=/4140/ostg.clktrk ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel -- Want excitement? Manually upgrade your production database. When you want reliability, choose Perforce Perforce version control. Predictably reliable. http://pubads.g.doubleclick.net/gampad/clk?id=157508191iu=/4140/ostg.clktrk ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Blog about EO
On 08/09/14 14:50, Daniel Zaoui wrote: ReHi, On 09/08/14 16:42, Daniel Zaoui wrote: Hi, On 09/08/14 16:16, Jean Rene Dawin wrote: On Sat, Aug 16, 2014 at 02:36:10PM +0900, Carsten Haitzler wrote: About time i got back to blogging about EFL etc. https://phab.enlightenment.org/phame/live/1//post/yet_another_c_object_model_but_better/ Hi, thanks for the explanations. Trying to reproduce the steps, the result of my tst.c differd a bit, though. I didn't get EOLIAN static void _tst_eo_base_constructor(Eo *obj, Tst_Data *pd) { eo_do_super(obj, TST_CLASS, eo_constructor()); } EOLIAN static void _tst_eo_base_destructor(Eo *obj, Tst_Data *pd) { eo_do_super(obj, TST_CLASS, eo_destructor()); } but instead EOLIAN static void _tst_class_constructor(Eo_Class *klass) { } EOLIAN static void _tst_class_destructor(Eo_Class *klass) { } Is there a more detailed documentation of the Eo-Syntax and API somewhere? Becuase the one on docs.enlightenment.org is not so verbose or maybe outdated. Is this because there will be more changes to Eo and things are not fixed yet? Thanks for your help, Jean Rene Dawin -- Want excitement? Manually upgrade your production database. When you want reliability, choose Perforce Perforce version control. Predictably reliable. http://pubads.g.doubleclick.net/gampad/clk?id=157508191iu=/4140/ostg.clktrk ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel You should try with Base.constructor instead of class.constructor (same for the destructor). I meant Eo.Base.constructor. One important thing to mention is that while we try not to, we change the Eolian syntax every now and then. Same goes with some of the class names and hierarchy, so the blog post may not be a 1-1 to what's currently in. -- Tom. -- Want excitement? Manually upgrade your production database. When you want reliability, choose Perforce Perforce version control. Predictably reliable. http://pubads.g.doubleclick.net/gampad/clk?id=157508191iu=/4140/ostg.clktrk ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Blog about EO
On Sun, 17 Aug 2014 11:37:32 +0900 Carsten Haitzler (The Rasterman) ras...@rasterman.com wrote: On Sat, 16 Aug 2014 22:02:09 -0300 Vinícius dos Santos Oliveira vini.ipsma...@gmail.com said: 2014-08-16 2:36 GMT-03:00 Carsten Haitzler ras...@rasterman.com: https://phab.enlightenment.org/phame/live/1//post/yet_another_c_object_model_but_better/ I want to comment over there, but it requires facebook login. Is this authentication method the only supported on the Enlightenment blog? yup. thats what phab does. phabricator is what we use for our dev site and it's written by a bunch of ex facebook guys. thus fb is what it supports. Um, I don't have a FB account (never will), but I have an Enlightenment phab account. Though perhaps that's coz I'm an E dev? -- A big old stinking pile of genius that no one wants coz there are too many silver coated monkeys in the world. signature.asc Description: PGP signature -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Blog about EO
On Sun, 17 Aug 2014 19:04:50 +1000 David Seikel onef...@gmail.com said: On Sun, 17 Aug 2014 11:37:32 +0900 Carsten Haitzler (The Rasterman) ras...@rasterman.com wrote: On Sat, 16 Aug 2014 22:02:09 -0300 Vinícius dos Santos Oliveira vini.ipsma...@gmail.com said: 2014-08-16 2:36 GMT-03:00 Carsten Haitzler ras...@rasterman.com: https://phab.enlightenment.org/phame/live/1//post/yet_another_c_object_model_but_better/ I want to comment over there, but it requires facebook login. Is this authentication method the only supported on the Enlightenment blog? yup. thats what phab does. phabricator is what we use for our dev site and it's written by a bunch of ex facebook guys. thus fb is what it supports. Um, I don't have a FB account (never will), but I have an Enlightenment phab account. Though perhaps that's coz I'm an E dev? that is irrelevant for phabs blog stuff - it only allows comments with fb accounts. i didn't write it - thats just how it came. -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)ras...@rasterman.com -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Blog about EO
Reply first, go over later. On top of that, It is very glad to see your article. Thank you. On Aug 16, 2014 2:44 PM, Carsten Haitzler ras...@rasterman.com wrote: About time i got back to blogging about EFL etc. https://phab.enlightenment.org/phame/live/1//post/yet_another_c_object_model_but_better/ -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)ras...@rasterman.com -- ___ 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
Re: [E-devel] Blog about EO
2014-08-16 2:36 GMT-03:00 Carsten Haitzler ras...@rasterman.com: https://phab.enlightenment.org/phame/live/1//post/yet_another_c_object_model_but_better/ I want to comment over there, but it requires facebook login. Is this authentication method the only supported on the Enlightenment blog? -- Vinícius dos Santos Oliveira https://about.me/vinipsmaker -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Blog about EO
On Sat, 16 Aug 2014 22:02:09 -0300 Vinícius dos Santos Oliveira vini.ipsma...@gmail.com said: 2014-08-16 2:36 GMT-03:00 Carsten Haitzler ras...@rasterman.com: https://phab.enlightenment.org/phame/live/1//post/yet_another_c_object_model_but_better/ I want to comment over there, but it requires facebook login. Is this authentication method the only supported on the Enlightenment blog? yup. thats what phab does. phabricator is what we use for our dev site and it's written by a bunch of ex facebook guys. thus fb is what it supports. -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)ras...@rasterman.com -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Blog about EO
2014-08-16 23:37 GMT-03:00 Carsten Haitzler ras...@rasterman.com: yup. thats what phab does. phabricator is what we use for our dev site and it's written by a bunch of ex facebook guys. thus fb is what it supports. I don't have a fb account, so I'm replying here. First, good to see you posting again. Secondly, it looks very promising. Good to see the EFL community is still improving its technologies. Now, just a few questions: - A few languages can guarantee that dangling references cannot be created or have its own techniques to detect them. Is the object-checking (dis)activatable? I mean, is there an alternative way to call the Eo functions without the unnecessary checking cost? - Is it thread-safe? I know it's a silly question, but a word confirming it would be good. -- Vinícius dos Santos Oliveira https://about.me/vinipsmaker -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Blog about EO
On Sun, 17 Aug 2014 01:11:51 -0300 Vinícius dos Santos Oliveira vini.ipsma...@gmail.com said: 2014-08-16 23:37 GMT-03:00 Carsten Haitzler ras...@rasterman.com: yup. thats what phab does. phabricator is what we use for our dev site and it's written by a bunch of ex facebook guys. thus fb is what it supports. I don't have a fb account, so I'm replying here. First, good to see you posting again. Secondly, it looks very promising. Good to see the EFL community is still improving its technologies. Now, just a few questions: - A few languages can guarantee that dangling references cannot be created or have its own techniques to detect them. Is the object-checking (dis)activatable? I mean, is there an alternative way to call the Eo functions without the unnecessary checking cost? compile-time for efl itself. you have to build it without checking. i'd advise against it because efll uses its own objects internally and if efl has a mistake in it you just nuked efl's own internal safety. i highly suggest not doing this. it may be that we remove the ability to compile without this check in the end as i an just see it now. gentoo ricers are going to add a use flag to turn this off and then we will get tonnes of stability complaints because the rest of us normal people run without turning the safety off. it's worth keeping this safety on. it doesn't cost much and is totally worth it. - Is it thread-safe? I know it's a silly question, but a word confirming it would be good. eo is. yes. efl in general (evas, edje etc.) are not, but eo is. -- Vinícius dos Santos Oliveira https://about.me/vinipsmaker -- ___ 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 -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Blog about EO
On Sun, 17 Aug 2014 01:40:25 -0300 Vinícius dos Santos Oliveira vini.ipsma...@gmail.com said: 2014-08-17 1:24 GMT-03:00 Carsten Haitzler ras...@rasterman.com: compile-time for efl itself. you have to build it without checking. i'd advise against it because efll uses its own objects internally and if efl has a mistake in it you just nuked efl's own internal safety. i highly suggest not doing this. it may be that we remove the ability to compile without this check in the end as i an just see it now. gentoo ricers are going to add a use flag to turn this off and then we will get tonnes of stability complaints because the rest of us normal people run without turning the safety off. it's worth keeping this safety on. it doesn't cost much and is totally worth it. I'd like to see this checking disabled per call only, not globally. Then only bindings for safe languages would use it. I'll leave the safety checks turned on. They're worth. Also, EFL is for GUI only and heavy computing sensitive data can be implemented without negative impact by just not touching EFL (temporally). Once more, good work. thats what we do - if it really is performance sensitive - dont go through eo. it's meant for the outer layer of api. :) -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)ras...@rasterman.com -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
Re: [E-devel] Blog about EO
2014-08-17 1:24 GMT-03:00 Carsten Haitzler ras...@rasterman.com: compile-time for efl itself. you have to build it without checking. i'd advise against it because efll uses its own objects internally and if efl has a mistake in it you just nuked efl's own internal safety. i highly suggest not doing this. it may be that we remove the ability to compile without this check in the end as i an just see it now. gentoo ricers are going to add a use flag to turn this off and then we will get tonnes of stability complaints because the rest of us normal people run without turning the safety off. it's worth keeping this safety on. it doesn't cost much and is totally worth it. I'd like to see this checking disabled per call only, not globally. Then only bindings for safe languages would use it. I'll leave the safety checks turned on. They're worth. Also, EFL is for GUI only and heavy computing sensitive data can be implemented without negative impact by just not touching EFL (temporally). Once more, good work. -- Vinícius dos Santos Oliveira https://about.me/vinipsmaker -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
[E-devel] Blog about EO
About time i got back to blogging about EFL etc. https://phab.enlightenment.org/phame/live/1//post/yet_another_c_object_model_but_better/ -- - Codito, ergo sum - I code, therefore I am -- The Rasterman (Carsten Haitzler)ras...@rasterman.com -- ___ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel