summaryrefslogtreecommitdiff
path: root/src/tests/eolian/data/typedef.eo
blob: 15ebbf7cc4d41edfbb293a6f9679e9b8e1ba7e99 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
type Evas.Coord: int; /* Simple type definition */
type List_Objects: own(list<Eo *>); /* A little more complex */

type Evas.Coord2: Evas.Coord;
type Evas.Coord3: Evas.Coord2;

type @extern Evas.Pants: float; /* not generated */

type Undef: __undefined_type; /* not generated */

type Event: __builtin_event_cb; /* specially generated */

type Free: __builtin_free_cb; /* specially generated */

enum Enum.Bar
{
   legacy: bar;
   first_item  = 0,
   second_item,
   last_item
}

enum Elm.Object.Select_Mode
{
   default = 0,
   always,
   none,
   display_only,
   max
}

class Typedef {
   methods {
      foo {
         params {
            idx: int;
         }
         return: own(char*);
      }
   }
}