summaryrefslogtreecommitdiff
path: root/tests/interface.test
blob: 08921bcea20f2415e7d03fe1ce2cb1195033c43b (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
<?xml version="1.0"?>
<api version="1.0">
  <namespace name="Foo">
    <interface name="Iface1" type-name="Iface1" get-type="iface1_get_type">
      <requires>
      <interface name="Iface2" />
      </requires>
      <method name="method1" symbol="method1">
        <return-type type="Iface2*" transfer="full" />
        <parameters>
          <parameter name="param1" type="Iface2*" transfer="full" direction="in" />
        </parameters>
      </method>
      <property name="prop1" readable="0" writable="0" type="gint" />
      <signal name="signal1" when="LAST">
        <return-type type="gboolean" />
        <parameters>
          <parameter name="obj" type="Iface1*" transfer="full" direction="in" />
        </parameters>
      </signal>
      <signal name="signal2" when="FIRST" no-recurse="1" detailed="1" action="1" no-hooks="1">
        <return-type type="void" />
        <parameters>
          <parameter name="obj" type="Iface1*" transfer="full" direction="in" />
        </parameters>
      </signal>
      <vfunc name="vfunc1" offset="10">
        <return-type type="Iface2*" transfer="full" />
        <parameters>
          <parameter name="param1" type="Iface2*" transfer="full" direction="in" />
        </parameters>
      </vfunc>
      <constant name="constant1" type="gint" value="42" />
    </interface>
    <interface name="Iface2" type-name="Iface2" get-type="iface2_get_type">
    </interface>
  </namespace>
</api>