Page MenuHomePhabricator

Introduction to Eolian
Closed, ResolvedPublic

Description

Idea would be to inherit from an existing class to create you own new object. Show eolian prototype and how to access the class private data. Illustrate interface and class definitions and method overrides.

cedric created this task.Nov 2 2017, 11:39 AM
cedric added a comment.Nov 2 2017, 4:40 PM

This could be one of this classical class inheritance tutorial. Where you have a shape that you inherit from to do an rectangle and so on.

First pass is now in: https://git.enlightenment.org/tools/examples.git/tree/c-eo-classes

Shape interface
Rectangle class
Square class

Covers a lot of it, I think that efl_override might need to be another tutorial.

Only the basic stuff, that is, create a new class with eo and using eolian_gen, is enough for a first tutorial. It can already include inheritance, as currently done for rectangle, square and shape.

But I think we need another tutorial for the things Cedric mentions in the description (private data, efl_data_scope_get(), efl_data_ref() / unref(), override, ..).
I still don't know how all this works, so I cannot suggest a name for the new tutorial. eo-private-data?
@ajwillia.ms can you prepare this new code?

This new tutorial is NOT YET the advanced EO classes in T6307, which should include interfaces, mixins, multiple inheritance, genetic sequencing and sharknados.

eo-class-data?

Maybe eo-classes-data, since this one is called eo-classes.

The working title for eo-classes is "Create New Classes with Eolian", so I guess the title for eo-class-data could be "Handling Private Data in Eolian Classes".

But is private data the only thing we will be talking about? what about Override?

ajwillia.ms updated the task description. (Show Details)Nov 15 2017, 8:52 AM
segfaultxavi closed this task as Resolved.Nov 21 2017, 8:54 AM