summaryrefslogtreecommitdiff
path: root/src/tests/eolian/data/object_impl.eo
blob: bec9d8f89f2846c066c7f16304bfadbcbd5293a5 (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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
class Object_Impl (Base) {
   properties {
      a {
         set {
            return: bool (false);
            value: const;
         }
         get {
         }
         keys {
            const(char)* part;
         }
         values {
            own(Eina.List*)<int> value;
         }
      }
      b {
         set {
         }
         get {
            /* set as virtual pure - no implementation expected */
         }
         values {
            own(Eina.List*)<int> value;
         }
      }
   }
   methods {
      constructor_1 @constructor {
         params {
            @in int a;
            @in char b;
         }
      }
      constructor_2 @constructor {
      }
      foo1 {
         /*@ comment foo */
         params {
            @in int a; /*@ a */
            @inout char b;
            @out double c;
         }
         return: char * (null); /*@ comment for method return */
      }
      foo2 @const {
         /*@ comment foo */
         params {
            @in int a;
            @in const(char)* b;
         }
      }
      pure_foo3 {
         /* set as virtual pure - no implementation expected */
      }
   }
   implements {
      class.constructor;
      class.destructor;
      Base.constructor;
      Base.destructor;
      @virtual .pure_foo3;
      @virtual .b.get;
   }
}