efl

Форк
0
/
dummy_test_object.eo 
1797 строк · 36.9 Кб
1
import eina_types;
2

3
type Dummy.MyInt: int; [[Docs for typedef Dummy. @since 1.66]]
4

5
const Dummy.Constvar_Bool : bool = true; [[Docs for var Dummy.Constvar_Bool. @since 1.66]]
6
const Dummy.Constvar_Int : int = -32766; [[Docs for var Dummy.Constvar_Int. @since 1.66]]
7
const Dummy.Constvar_UInt : uint = 65533U; [[Docs for var Dummy.Constvar_UInt. @since 1.66]]
8
const Dummy.Constvar_Long : long = -2147483644L; [[Docs for var Dummy.Constvar_Long. @since 1.66]]
9
const Dummy.Constvar_ULong : ulong = 4294967288UL; [[Docs for var Dummy.Constvar_ULong @since 1.66]]
10
const Dummy.Constvar_LLong : llong = -9223372036854775800LL; [[Docs for var Dummy.Constvar_LLong. @since 1.66]]
11
const Dummy.Constvar_ULLong : ullong = 18446744073709551615ULL; [[Docs for var Dummy.Constvar_ULLong. @since 1.66]]
12
const Dummy.Constvar_Float : float = 16777211.0f; [[Docs for var Dummy.Constvar_Float. @since 1.66]]
13
const Dummy.Constvar_Double : double = 9007199254740988.0; [[Docs for var Dummy.Constvar_Double. @since 1.66]]
14
const Dummy.Constvar_Char : char = '!'; [[Docs for var Dummy.Constvar_Char. @since 1.66]]
15
const Dummy.Constvar_String : string = "test_str"; [[Docs for var Dummy.Constvar_String. @since 1.66]]
16

17
enum Dummy.SampleEnum {
18
   [[Docs for enum Dummy.SampleEnum. @since 1.66]]
19
   v0,
20
   v1,
21
   v2,
22
   v3,
23
   v4,
24
}
25

26
struct @free(free) Dummy.StructSimple {
27
   [[Docs for struct Dummy.StructSimple. @since 1.66]]
28
   fbyte: byte;
29
   fubyte: ubyte;
30
   fchar: char;
31
   fshort: short;
32
   fushort: ushort;
33
   fint: int;
34
   fuint: uint;
35
   flong: long;
36
   fulong: ulong;
37
   fllong: llong;
38
   fullong: ullong;
39
   fint8: int8;
40
   fuint8: uint8;
41
   fint16: int16;
42
   fuint16: uint16;
43
   fint32: int32;
44
   fuint32: uint32;
45
   fint64: int64;
46
   fuint64: uint64;
47
   fssize: ssize;
48
   fsize: size;
49
   fintptr: intptr;
50
   // fuintptr: uintptr; // TODO
51
   fptrdiff: ptrdiff;
52
   ffloat: float;
53
   fdouble: double;
54
   fbool: bool;
55
   fenum: Dummy.SampleEnum;
56
   // fboolptr: ptr(bool); // TODO
57
   // fbyteptr: ptr(byte);
58
   // fubyteptr: ptr(ubyte);
59
   // fcharptr: ptr(char);
60
   // fuint8ptr: ptr(uint8);
61
   // fint16ptr: ptr(int16);
62
   // fuint64ptr: ptr(uint64);
63
   // fssizeptr: ptr(ssize);
64
   // fsizeptr: ptr(size);
65
   // fintptrptr: ptr(intptr);
66
   // fptrdiffptr: ptr(ptrdiff);
67
   // ffloatptr: ptr(float);
68
   // fdoubleptr: ptr(double);
69
   // fvoid_ptrptr: ptr(void_ptr);
70
   // fenumptr: ptr(Dummy.SampleEnum);
71
   fstring: string;
72
   fmstring: mstring;
73
   fstringshare: stringshare;
74
   fmyint: Dummy.MyInt;
75
}
76

77
struct @beta @free(free) Dummy.StructComplex {
78
   farray: array<string>;
79
   flist: list<string>;
80
   fhash: hash<string, string>;
81
   fiterator: iterator<string>;
82
   faccessor: accessor<string>;
83
   fany_value: any_value;
84
   fany_value_ref: any_value_ref;
85
   fbinbuf: binbuf;
86
   fslice: slice<ubyte>;
87
   // fslice: ptr(Eina.Slice); // TODO
88
   fobj: Dummy.Numberwrapper;
89
}
90

91
function Dummy.SimpleCb {
92
   [[Docs for function Dummy.SimpleCb. @since 1.66]]
93
   params {
94
      a: int;
95
   }
96
   return: int;
97
};
98

99
function Dummy.FormatCb {
100
   [[Docs for function Dummy.FormatCb. @since 1.66]]
101
   params {
102
      @in str: strbuf;
103
      @in value: const(any_value);
104
   }
105
};
106

107
class Dummy.Test_Object extends Efl.Object implements Dummy.Test_Iface {
108
   [[ Simple test class
109

110
      @since 1.23 ]]
111
   methods {
112
      return_object {
113
         return: Dummy.Test_Object;
114
      }
115

116
      return_null_object {
117
         return: Dummy.Test_Object;
118
      }
119

120
      return_iface {
121
         return: Dummy.Test_Iface;
122
      }
123

124
      int_out {
125
         params {
126
            @in x: int;
127
            @out y: int;
128
         }
129
      }
130

131
      /*
132
      int_ptr_out {
133
         params {
134
            @in x: int;
135
            @out y: ptr(int);
136
         }
137
      }
138
      */
139

140
      in_stringshare {
141
         params {
142
            @in v: stringshare;
143
         }
144
         return: stringshare @move;
145
      }
146
      in_own_stringshare {
147
         params {
148
            @in v: stringshare @move;
149
         }
150
         return: stringshare @move;
151
      }
152

153
      out_stringshare {
154
         params {
155
            @out v: stringshare;
156
         }
157
      }
158
      out_own_stringshare {
159
         params {
160
            @out v: stringshare @move;
161
         }
162
      }
163

164
      return_stringshare {
165
         return: stringshare;
166
      }
167
      return_own_stringshare {
168
         return: stringshare @move;
169
      }
170

171
      in_string {
172
         params {
173
            @in str: string;
174
         }
175
         return: mstring @move;
176
      }
177

178
      in_own_string {
179
         params {
180
            @in str: mstring @move;
181
         }
182
         return: mstring @move;
183
      }
184

185
      return_string {
186
         return: string;
187
      }
188

189
      return_own_string {
190
         return: mstring @move;
191
      }
192

193
      out_string {
194
         params {
195
            @out str: string;
196
         }
197
      }
198

199
      out_own_string {
200
         params {
201
            @out str: mstring @move;
202
         }
203
      }
204

205
      call_in_string {
206
        params {
207
            @in str: string;
208
        }
209
      }
210

211
      call_in_own_string {
212
        params {
213
            @in str: mstring @move;
214
        }
215
      }
216

217
      call_return_string {
218
         return: string;
219
      }
220

221
      call_return_own_string {
222
         return: mstring @move;
223
      }
224

225
      call_out_string {
226
         return: string;
227
      }
228

229
      call_out_own_string {
230
         return: mstring @move;
231
      }
232

233
      // Stringshare virtual helpers
234
      call_in_stringshare {
235
        params {
236
            @in str: stringshare;
237
        }
238
      }
239

240
      call_in_own_stringshare {
241
        params {
242
            @in str: stringshare @move;
243
        }
244
      }
245

246
      call_return_stringshare {
247
         return: stringshare;
248
      }
249

250
      call_return_own_stringshare {
251
         return: stringshare @move;
252
      }
253

254
      call_out_stringshare {
255
         return: stringshare;
256
      }
257

258
      call_out_own_stringshare {
259
         return: stringshare @move;
260
      }
261

262
      eina_slice_in {
263
         params {
264
            @in slice: slice<ubyte>;
265
         }
266
         return: bool;
267
      }
268

269
      eina_rw_slice_in {
270
         params {
271
            @in slice: rw_slice<ubyte>;
272
         }
273
         return: bool;
274
      }
275

276
      eina_slice_out {
277
         params {
278
            @out slice: slice<ubyte>;
279
         }
280
         return: bool;
281
      }
282

283
      eina_rw_slice_out {
284
         params {
285
            @out slice: rw_slice<ubyte>;
286
         }
287
         return: bool;
288
      }
289

290
      eina_rw_slice_inout {
291
         params {
292
            @inout slice: rw_slice<ubyte>;
293
         }
294
         return: bool;
295
      }
296

297
      /*
298
      eina_slice_return {
299
         return: slice<ubyte>;
300
      }
301

302
      eina_rw_slice_return {
303
         return: rw_slice<ubyte>;
304
      }
305
      */
306

307
      eina_binbuf_in {
308
         params {
309
            @in binbuf: binbuf;
310
         }
311
         return: bool;
312
      }
313

314
      call_eina_binbuf_in {
315
         params {
316
            @in binbuf: binbuf;
317
         }
318
         return: bool;
319
      }
320

321
      eina_binbuf_in_own {
322
         params {
323
            @in binbuf: binbuf @move;
324
         }
325
         return: bool;
326
      }
327

328
      call_eina_binbuf_in_own {
329
        params {
330
            @in str: binbuf @move;
331
        }
332
        return: bool;
333
      }
334

335
      check_binbuf_in_own {
336
         return: bool;
337
      }
338

339
      eina_binbuf_out {
340
         params {
341
            @out binbuf: binbuf;
342
         }
343
         return: bool;
344
      }
345

346
      call_eina_binbuf_out {
347
         return: binbuf;
348
      }
349

350
      check_binbuf_out {
351
         return: bool;
352
      }
353

354
      eina_binbuf_out_own {
355
         params {
356
            @out binbuf: binbuf @move;
357
         }
358
         return: bool;
359
      }
360

361
      call_eina_binbuf_out_own {
362
         return: binbuf @move;
363
      }
364

365
      eina_binbuf_return {
366
         return: binbuf;
367
      }
368

369
      call_eina_binbuf_return {
370
         return: binbuf;
371
      }
372

373
      check_binbuf_return {
374
         return: bool;
375
      }
376

377
      eina_binbuf_return_own {
378
         return: binbuf @move;
379
      }
380

381
      call_eina_binbuf_return_own {
382
         return: binbuf @move;
383
      }
384

385
      /* Eina Array */
386

387
      /* Integer */
388
      eina_array_int_in {
389
         params {
390
            @in arr: array<int>;
391
         }
392
         return: bool;
393
      }
394

395
      eina_array_int_in_own {
396
         params {
397
            @in arr: array<int> @move; // <int @move>
398
         }
399
         return: bool;
400
      }
401
      check_eina_array_int_in_own {
402
         return: bool;
403
      }
404

405
      eina_array_int_out {
406
         params {
407
            @out arr: array<int>;
408
         }
409
         return: bool;
410
      }
411
      check_eina_array_int_out {
412
         return: bool;
413
      }
414

415
      eina_array_int_out_own {
416
         params {
417
            @out arr: array<int> @move; // <int @move>
418
         }
419
         return: bool;
420
      }
421

422
      eina_array_int_return {
423
         return: array<int>;
424
      }
425
      check_eina_array_int_return {
426
         return: bool;
427
      }
428

429
      eina_array_int_return_own {
430
         return: array<int> @move; // <int @move>
431
      }
432

433
      /* String */
434
      eina_array_str_in {
435
         params {
436
            @in arr: array<string>;
437
         }
438
         return: bool;
439
      }
440

441
      eina_array_str_in_own {
442
         params {
443
            @in arr: array<mstring @move> @move;
444
         }
445
         return: bool;
446
      }
447
      check_eina_array_str_in_own {
448
         return: bool;
449
      }
450

451
      eina_array_str_out {
452
         params {
453
            @out arr: array<string>;
454
         }
455
         return: bool;
456
      }
457
      check_eina_array_str_out {
458
         return: bool;
459
      }
460

461
      eina_array_str_out_own {
462
         params {
463
            @out arr: array<mstring @move> @move;
464
         }
465
         return: bool;
466
      }
467

468
      eina_array_str_return {
469
         return: array<string>;
470
      }
471
      check_eina_array_str_return {
472
         return: bool;
473
      }
474

475
      eina_array_str_return_own {
476
         return: array<mstring @move> @move;
477
      }
478

479
      /* Eina_Stringshare */
480
      eina_array_strshare_in {
481
         params {
482
            @in arr: array<stringshare>;
483
         }
484
         return: bool;
485
      }
486

487
      eina_array_strshare_in_own {
488
         params {
489
            @in arr: array<stringshare @move> @move;
490
         }
491
         return: bool;
492
      }
493
      check_eina_array_strshare_in_own {
494
         return: bool;
495
      }
496

497
      eina_array_strshare_out {
498
         params {
499
            @out arr: array<stringshare>;
500
         }
501
         return: bool;
502
      }
503
      check_eina_array_strshare_out {
504
         return: bool;
505
      }
506

507
      eina_array_strshare_out_own {
508
         params {
509
            @out arr: array<stringshare @move> @move;
510
         }
511
         return: bool;
512
      }
513

514
      eina_array_strshare_return {
515
         return: array<stringshare>;
516
      }
517
      check_eina_array_strshare_return {
518
         return: bool;
519
      }
520

521
      eina_array_strshare_return_own {
522
         return: array<stringshare @move> @move;
523
      }
524

525
      /* Object */
526
      eina_array_obj_in {
527
         params {
528
            @in arr: array<Dummy.Numberwrapper>;
529
         }
530
         return: bool;
531
      }
532

533
      eina_array_obj_in_own {
534
         params {
535
            @in arr: array<Dummy.Numberwrapper @move> @move;
536
         }
537
         return: bool;
538
      }
539
      check_eina_array_obj_in_own {
540
         return: bool;
541
      }
542

543
      eina_array_obj_out {
544
         params {
545
            @out arr: array<Dummy.Numberwrapper>;
546
         }
547
         return: bool;
548
      }
549
      check_eina_array_obj_out {
550
         return: bool;
551
      }
552

553
      eina_array_obj_out_own {
554
         params {
555
            @out arr: array<Dummy.Numberwrapper @move> @move;
556
         }
557
         return: bool;
558
      }
559

560
      eina_array_obj_return {
561
         return: array<Dummy.Numberwrapper>;
562
      }
563
      check_eina_array_obj_return {
564
         return: bool;
565
      }
566

567
      eina_array_obj_return_own {
568
         return: array<Dummy.Numberwrapper @move> @move;
569
      }
570

571
      eina_array_obj_return_in {
572
         params {
573
            @in arr: array<Dummy.Numberwrapper>;
574
         }
575
         return: array<Dummy.Numberwrapper>;
576
     }
577

578
      /* Eina List */
579

580
      /* Integer */
581
      eina_list_int_in @beta {
582
         params {
583
            @in lst: list<int>;
584
         }
585
         return: bool;
586
      }
587

588
      eina_list_int_in_own @beta {
589
         params {
590
            @in lst: list<int> @move; // <int @move>
591
         }
592
         return: bool;
593
      }
594
      check_eina_list_int_in_own {
595
         return: bool;
596
      }
597

598
      eina_list_int_out @beta {
599
         params {
600
            @out lst: list<int>;
601
         }
602
         return: bool;
603
      }
604
      check_eina_list_int_out {
605
         return: bool;
606
      }
607

608
      eina_list_int_out_own @beta {
609
         params {
610
            @out lst: list<int> @move; // <int @move>
611
         }
612
         return: bool;
613
      }
614

615
      eina_list_int_return @beta {
616
         return: list<int>;
617
      }
618
      check_eina_list_int_return {
619
         return: bool;
620
      }
621

622
      eina_list_int_return_own @beta {
623
         return: list<int> @move; // <int @move>
624
      }
625

626
      /* String */
627
      eina_list_str_in @beta {
628
         params {
629
            @in lst: list<string>;
630
         }
631
         return: bool;
632
      }
633

634
      eina_list_str_in_own @beta {
635
         params {
636
            @in lst: list<mstring @move> @move;
637
         }
638
         return: bool;
639
      }
640
      check_eina_list_str_in_own {
641
         return: bool;
642
      }
643

644
      eina_list_str_out @beta {
645
         params {
646
            @out lst: list<string>;
647
         }
648
         return: bool;
649
      }
650
      check_eina_list_str_out {
651
         return: bool;
652
      }
653

654
      eina_list_str_out_own @beta {
655
         params {
656
            @out lst: list<mstring @move> @move;
657
         }
658
         return: bool;
659
      }
660

661
      eina_list_str_return @beta {
662
         return: list<string>;
663
      }
664
      check_eina_list_str_return {
665
         return: bool;
666
      }
667

668
      eina_list_str_return_own @beta {
669
         return: list<mstring @move> @move;
670
      }
671

672
      /* Eina_Stringshare */
673
      eina_list_strshare_in @beta {
674
         params {
675
            @in lst: list<stringshare>;
676
         }
677
         return: bool;
678
      }
679

680
      eina_list_strshare_in_own @beta {
681
         params {
682
            @in lst: list<stringshare @move> @move;
683
         }
684
         return: bool;
685
      }
686
      check_eina_list_strshare_in_own {
687
         return: bool;
688
      }
689

690
      eina_list_strshare_out @beta {
691
         params {
692
            @out lst: list<stringshare>;
693
         }
694
         return: bool;
695
      }
696
      check_eina_list_strshare_out {
697
         return: bool;
698
      }
699

700
      eina_list_strshare_out_own @beta {
701
         params {
702
            @out lst: list<stringshare @move> @move;
703
         }
704
         return: bool;
705
      }
706

707
      eina_list_strshare_return @beta {
708
         return: list<stringshare>;
709
      }
710
      check_eina_list_strshare_return {
711
         return: bool;
712
      }
713

714
      eina_list_strshare_return_own @beta {
715
         return: list<stringshare @move> @move;
716
      }
717

718
      /* Object */
719
      eina_list_obj_in @beta {
720
         params {
721
            @in lst: list<Dummy.Numberwrapper>;
722
         }
723
         return: bool;
724
      }
725

726
      eina_list_obj_in_own @beta {
727
         params {
728
            @in lst: list<Dummy.Numberwrapper @move> @move;
729
         }
730
         return: bool;
731
      }
732
      check_eina_list_obj_in_own {
733
         return: bool;
734
      }
735

736
      eina_list_obj_out @beta {
737
         params {
738
            @out lst: list<Dummy.Numberwrapper>;
739
         }
740
         return: bool;
741
      }
742
      check_eina_list_obj_out {
743
         return: bool;
744
      }
745

746
      eina_list_obj_out_own @beta {
747
         params {
748
            @out lst: list<Dummy.Numberwrapper @move> @move;
749
         }
750
         return: bool;
751
      }
752

753
      eina_list_obj_return @beta {
754
         return: list<Dummy.Numberwrapper>;
755
      }
756
      check_eina_list_obj_return {
757
         return: bool;
758
      }
759

760
      eina_list_obj_return_own @beta {
761
         return: list<Dummy.Numberwrapper @move> @move;
762
      }
763

764
      eina_list_obj_return_in @beta {
765
         params {
766
            @in lst: list<Dummy.Numberwrapper>;
767
         }
768
         return: list<Dummy.Numberwrapper>;
769
      }
770

771
      // Eina Hash //
772

773
      // Integer //
774
      eina_hash_int_in @beta {
775
         params {
776
            @in hsh: hash<int, int>;
777
         }
778
         return: bool;
779
      }
780

781
      /*
782
      eina_hash_int_in_own @beta {
783
         params {
784
            @in hsh: hash<int, int> @move; // <, int @move>
785
         }
786
         return: bool;
787
      }
788
      check_eina_hash_int_in_own {
789
         return: bool;
790
      }
791
      */
792

793
      eina_hash_int_out @beta {
794
         params {
795
            @out hsh: hash<int, int>;
796
         }
797
         return: bool;
798
      }
799
      check_eina_hash_int_out @beta {
800
         return: bool;
801
      }
802

803
      /*
804
      eina_hash_int_out_own @beta {
805
         params {
806
            @out hsh: hash<int, int> @move; // <, int @move>
807
         }
808
         return: bool;
809
      }
810
      check_eina_hash_int_out_own @beta {
811
         return: bool;
812
      }
813
      */
814

815
      eina_hash_int_return @beta {
816
         return: hash<int, int>;
817
      }
818
      check_eina_hash_int_return @beta {
819
         return: bool;
820
      }
821

822
      /*
823
      eina_hash_int_return_own @beta {
824
         return: hash<int, int> @move; // <, int @move>
825
      }
826
      check_eina_hash_int_return_own @beta {
827
         return: bool;
828
      }
829
      */
830

831
      // String //
832
      eina_hash_str_in @beta {
833
         params {
834
            @in hsh: hash<string, string>;
835
         }
836
         return: bool;
837
      }
838

839
      eina_hash_str_in_own @beta {
840
         params {
841
            @in hsh: hash<string, mstring @move> @move;
842
         }
843
         return: bool;
844
      }
845
      check_eina_hash_str_in_own @beta {
846
         return: bool;
847
      }
848

849
      eina_hash_str_out @beta {
850
         params {
851
            @out hsh: hash<string, string>;
852
         }
853
         return: bool;
854
      }
855
      check_eina_hash_str_out @beta {
856
         return: bool;
857
      }
858

859
      eina_hash_str_out_own @beta {
860
         params {
861
            @out hsh: hash<string, mstring @move> @move;
862
         }
863
         return: bool;
864
      }
865
      check_eina_hash_str_out_own @beta {
866
         return: bool;
867
      }
868

869
      eina_hash_str_return @beta {
870
         return: hash<string, string>;
871
      }
872
      check_eina_hash_str_return @beta {
873
         return: bool;
874
      }
875

876
      eina_hash_str_return_own @beta {
877
         return: hash<string, mstring @move> @move;
878
      }
879
      check_eina_hash_str_return_own @beta {
880
         return: bool;
881
      }
882

883
      // Eina_Stringshare //
884
      eina_hash_strshare_in @beta {
885
         params {
886
            @in hsh: hash<stringshare, stringshare>;
887
         }
888
         return: bool;
889
      }
890

891
      eina_hash_strshare_in_own @beta {
892
         params {
893
            @in hsh: hash<stringshare, stringshare @move> @move;
894
         }
895
         return: bool;
896
      }
897
      check_eina_hash_strshare_in_own @beta {
898
         return: bool;
899
      }
900

901
      eina_hash_strshare_out @beta {
902
         params {
903
            @out hsh: hash<stringshare, stringshare>;
904
         }
905
         return: bool;
906
      }
907
      check_eina_hash_strshare_out @beta {
908
         return: bool;
909
      }
910

911
      eina_hash_strshare_out_own @beta {
912
         params {
913
            @out hsh: hash<stringshare, stringshare @move> @move;
914
         }
915
         return: bool;
916
      }
917
      check_eina_hash_strshare_out_own @beta {
918
         return: bool;
919
      }
920

921
      eina_hash_strshare_return @beta {
922
         return: hash<stringshare, stringshare>;
923
      }
924
      check_eina_hash_strshare_return @beta {
925
         return: bool;
926
      }
927

928
      eina_hash_strshare_return_own @beta {
929
         return: hash<stringshare, stringshare @move> @move;
930
      }
931
      check_eina_hash_strshare_return_own @beta {
932
         return: bool;
933
      }
934

935
      // Object //
936
      eina_hash_obj_in @beta {
937
         params {
938
            @in hsh: hash<Dummy.Numberwrapper, Dummy.Numberwrapper>;
939
            @in nwk1: Dummy.Numberwrapper;
940
            @in nwv1: Dummy.Numberwrapper;
941
            @out nwk2: Dummy.Numberwrapper;
942
            @out nwv2: Dummy.Numberwrapper;
943
         }
944
         return: bool;
945
      }
946

947
      eina_hash_obj_in_own @beta {
948
         params {
949
            @in hsh: hash<Dummy.Numberwrapper, Dummy.Numberwrapper @move> @move;
950
            @in nwk1: Dummy.Numberwrapper;
951
            @in nwv1: Dummy.Numberwrapper;
952
            @out nwk2: Dummy.Numberwrapper;
953
            @out nwv2: Dummy.Numberwrapper;
954
         }
955
         return: bool;
956
      }
957
      check_eina_hash_obj_in_own @beta {
958
         params {
959
            @in nwk1: Dummy.Numberwrapper;
960
            @in nwv1: Dummy.Numberwrapper;
961
            @in nwk2: Dummy.Numberwrapper;
962
            @in nwv2: Dummy.Numberwrapper;
963
         }
964
         return: bool;
965
      }
966

967
      eina_hash_obj_out @beta {
968
         params {
969
            @out hsh: hash<Dummy.Numberwrapper, Dummy.Numberwrapper>;
970
            @out nwk: Dummy.Numberwrapper;
971
            @out nwv: Dummy.Numberwrapper;
972
         }
973
         return: bool;
974
      }
975
      check_eina_hash_obj_out @beta {
976
         params {
977
            @in nwk1: Dummy.Numberwrapper;
978
            @in nwv1: Dummy.Numberwrapper;
979
            @in nwk2: Dummy.Numberwrapper;
980
            @in nwv2: Dummy.Numberwrapper;
981
         }
982
         return: bool;
983
      }
984

985
      eina_hash_obj_out_own @beta {
986
         params {
987
            @out hsh: hash<Dummy.Numberwrapper, Dummy.Numberwrapper @move> @move;
988
            @out nwk: Dummy.Numberwrapper;
989
            @out nwv: Dummy.Numberwrapper;
990
         }
991
         return: bool;
992
      }
993
      check_eina_hash_obj_out_own @beta {
994
         return: bool;
995
      }
996

997
      eina_hash_obj_return @beta {
998
         params {
999
            @out nwk: Dummy.Numberwrapper;
1000
            @out nwv: Dummy.Numberwrapper;
1001
         }
1002
         return: hash<Dummy.Numberwrapper, Dummy.Numberwrapper>;
1003
      }
1004
      check_eina_hash_obj_return @beta {
1005
         params {
1006
            @in nwk1: Dummy.Numberwrapper;
1007
            @in nwv1: Dummy.Numberwrapper;
1008
            @in nwk2: Dummy.Numberwrapper;
1009
            @in nwv2: Dummy.Numberwrapper;
1010
         }
1011
         return: bool;
1012
      }
1013

1014
      eina_hash_obj_return_own @beta {
1015
         params {
1016
            @out nwk: Dummy.Numberwrapper;
1017
            @out nwv: Dummy.Numberwrapper;
1018
         }
1019
         return: hash<Dummy.Numberwrapper, Dummy.Numberwrapper @move> @move;
1020
      }
1021
      check_eina_hash_obj_return_own @beta {
1022
         return: bool;
1023
      }
1024

1025
      /* Eina Iterator */
1026

1027
      /* Integer */
1028
      eina_iterator_int_in {
1029
         params {
1030
            @in itr: iterator<int>;
1031
         }
1032
         return: bool;
1033
      }
1034

1035
      eina_iterator_int_in_own {
1036
         params {
1037
            @in itr: iterator<int> @move;
1038
         }
1039
         return: bool;
1040
      }
1041
      check_eina_iterator_int_in_own {
1042
         return: bool;
1043
      }
1044

1045
      eina_iterator_int_out {
1046
         params {
1047
            @out itr: iterator<int>;
1048
         }
1049
         return: bool;
1050
      }
1051
      check_eina_iterator_int_out {
1052
         return: bool;
1053
      }
1054

1055
      eina_iterator_int_out_own {
1056
         params {
1057
            @out itr: iterator<int> @move;
1058
         }
1059
         return: bool;
1060
      }
1061

1062
      eina_iterator_int_return {
1063
         return: iterator<int>;
1064
      }
1065
      check_eina_iterator_int_return {
1066
         return: bool;
1067
      }
1068

1069
      eina_iterator_int_return_own {
1070
         return: iterator<int> @move;
1071
      }
1072

1073
      /* String */
1074
      eina_iterator_str_in {
1075
         params {
1076
            @in itr: iterator<string>;
1077
         }
1078
         return: bool;
1079
      }
1080

1081
      eina_iterator_str_in_own {
1082
         params {
1083
            @in itr: iterator<mstring> @move;
1084
         }
1085
         return: bool;
1086
      }
1087
      check_eina_iterator_str_in_own {
1088
         return: bool;
1089
      }
1090

1091
      eina_iterator_str_out {
1092
         params {
1093
            @out itr: iterator<string>;
1094
         }
1095
         return: bool;
1096
      }
1097
      check_eina_iterator_str_out {
1098
         return: bool;
1099
      }
1100

1101
      eina_iterator_str_out_own {
1102
         params {
1103
            @out itr: iterator<mstring> @move;
1104
         }
1105
         return: bool;
1106
      }
1107

1108
      eina_iterator_str_return {
1109
         return: iterator<string>;
1110
      }
1111
      check_eina_iterator_str_return {
1112
         return: bool;
1113
      }
1114

1115
      eina_iterator_str_return_own {
1116
         return: iterator<mstring> @move;
1117
      }
1118

1119
      /* Eina_Stringshare */
1120
      eina_iterator_strshare_in {
1121
         params {
1122
            @in itr: iterator<stringshare>;
1123
         }
1124
         return: bool;
1125
      }
1126

1127
      eina_iterator_strshare_in_own {
1128
         params {
1129
            @in itr: iterator<stringshare> @move;
1130
         }
1131
         return: bool;
1132
      }
1133
      check_eina_iterator_strshare_in_own {
1134
         return: bool;
1135
      }
1136

1137
      eina_iterator_strshare_out {
1138
         params {
1139
            @out itr: iterator<stringshare>;
1140
         }
1141
         return: bool;
1142
      }
1143
      check_eina_iterator_strshare_out {
1144
         return: bool;
1145
      }
1146

1147
      eina_iterator_strshare_out_own {
1148
         params {
1149
            @out itr: iterator<stringshare> @move;
1150
         }
1151
         return: bool;
1152
      }
1153

1154
      eina_iterator_strshare_return {
1155
         return: iterator<stringshare>;
1156
      }
1157
      check_eina_iterator_strshare_return {
1158
         return: bool;
1159
      }
1160

1161
      eina_iterator_strshare_return_own {
1162
         return: iterator<stringshare> @move;
1163
      }
1164

1165
      /* Object */
1166
      eina_iterator_obj_in {
1167
         params {
1168
            @in itr: iterator<Dummy.Numberwrapper>;
1169
         }
1170
         return: bool;
1171
      }
1172

1173
      eina_iterator_obj_in_own {
1174
         params {
1175
            @in itr: iterator<Dummy.Numberwrapper> @move;
1176
         }
1177
         return: bool;
1178
      }
1179
      check_eina_iterator_obj_in_own {
1180
         return: bool;
1181
      }
1182

1183
      eina_iterator_obj_out {
1184
         params {
1185
            @out itr: iterator<Dummy.Numberwrapper>;
1186
         }
1187
         return: bool;
1188
      }
1189
      check_eina_iterator_obj_out {
1190
         return: bool;
1191
      }
1192

1193
      eina_iterator_obj_out_own {
1194
         params {
1195
            @out itr: iterator<Dummy.Numberwrapper> @move;
1196
         }
1197
         return: bool;
1198
      }
1199

1200
      eina_iterator_obj_return {
1201
         return: iterator<Dummy.Numberwrapper>;
1202
      }
1203
      check_eina_iterator_obj_return {
1204
         return: bool;
1205
      }
1206

1207
      eina_iterator_obj_return_own {
1208
         return: iterator<Dummy.Numberwrapper> @move;
1209
      }
1210

1211
     /* Function Pointer */
1212

1213
     set_callback {
1214
         params {
1215
            cb: Dummy.SimpleCb;
1216
         }
1217
      }
1218

1219
      call_callback {
1220
         params {
1221
            a: int;
1222
         }
1223
         return: int;
1224
      }
1225

1226
      call_set_callback {
1227
      }
1228

1229
      raises_eina_error {
1230

1231
      }
1232

1233
      children_raise_error {
1234

1235
      }
1236
      call_children_raise_error {
1237

1238
      }
1239

1240
      error_ret_set {
1241
         params {
1242
            error: Eina.Error;
1243
         }
1244
      }
1245

1246
      returns_error {
1247
         return: Eina.Error;
1248
      }
1249

1250
      /* Eina Values */
1251
      set_value_ptr {
1252
         params {
1253
            value: any_value_ref;
1254
         }
1255
      }
1256

1257
      set_value_ptr_own {
1258
         params {
1259
            value: any_value_ref @move;
1260
         }
1261
      }
1262

1263
      set_value {
1264
         params {
1265
            value: any_value;
1266
         }
1267
      }
1268

1269
      call_set_value {
1270
         params {
1271
            value: const(any_value);
1272
         }
1273
      }
1274

1275
      get_value_ptr_own {
1276
         return: any_value_ref @move;
1277
      }
1278

1279
      get_value_ptr {
1280
         return: any_value_ref;
1281
      }
1282

1283
      /* Commented out due to issues regarding eolian treatment of any_value.
1284
       * Somehow eolian is giving 0 as the default value when declaring the function below,
1285
       * leading to compiler errors.
1286
       */
1287
      /* get_value {
1288
         return: any_value;
1289
      }
1290
      */
1291

1292
      clear_value {
1293
      }
1294

1295
      out_value_ptr {
1296
         params {
1297
            @out value: any_value_ref;
1298
         }
1299
      }
1300

1301
      out_value_ptr_own {
1302
         params {
1303
            @out value: any_value_ref @move;
1304
         }
1305
      }
1306

1307
      out_value {
1308
         params {
1309
            @out value: any_value;
1310
         }
1311
      }
1312

1313
      /* Structs */
1314

1315
      struct_simple_in {
1316
         params {
1317
            @in simple: Dummy.StructSimple;
1318
         }
1319
         return: bool;
1320
      }
1321

1322
      /*
1323
      struct_simple_ptr_in {
1324
         params {
1325
            @in simple: ptr(Dummy.StructSimple);
1326
         }
1327
         return: bool;
1328
      }
1329

1330
      struct_simple_ptr_in_own {
1331
         params {
1332
            @in simple: ptr(Dummy.StructSimple) @move;
1333
         }
1334
         return: Dummy.StructSimple;
1335
      }
1336
      */
1337

1338
      struct_simple_out {
1339
         params {
1340
            @out simple: Dummy.StructSimple;
1341
         }
1342
         return: bool;
1343
      }
1344

1345
      /*
1346
      struct_simple_ptr_out {
1347
         params {
1348
            @out simple: ptr(Dummy.StructSimple);
1349
         }
1350
         return: Dummy.StructSimple;
1351
      }
1352

1353
      struct_simple_ptr_out_own {
1354
         params {
1355
            @out simple: ptr(Dummy.StructSimple) @move;
1356
         }
1357
         return: Dummy.StructSimple;
1358
      }
1359
      */
1360

1361
      struct_simple_return {
1362
         return: Dummy.StructSimple;
1363
      }
1364

1365
      /*
1366
      struct_simple_ptr_return {
1367
         return: ptr(Dummy.StructSimple);
1368
      }
1369

1370
      struct_simple_ptr_return_own {
1371
         return: ptr(Dummy.StructSimple) @move;
1372
      }
1373
      */
1374

1375
      call_struct_simple_in {
1376
         params {
1377
            @in simple: Dummy.StructSimple;
1378
         }
1379
      }
1380

1381
      /*
1382
      call_struct_simple_ptr_in {
1383
         params {
1384
            @in simple: ptr(Dummy.StructSimple);
1385
         }
1386
      }
1387

1388
      call_struct_simple_ptr_in_own {
1389
         params {
1390
            @in simple: ptr(Dummy.StructSimple) @move;
1391
         }
1392
      }
1393
      */
1394

1395
      call_struct_simple_out {
1396
         params {
1397
            @out simple: Dummy.StructSimple;
1398
         }
1399
      }
1400

1401
      /*
1402
      call_struct_simple_ptr_out {
1403
         params {
1404
            @out simple: ptr(Dummy.StructSimple);
1405
         }
1406
      }
1407

1408
      call_struct_simple_ptr_out_own {
1409
         params {
1410
            @out simple: ptr(Dummy.StructSimple) @move;
1411
         }
1412
      }
1413
      */
1414

1415
      call_struct_simple_return {
1416
         return: Dummy.StructSimple;
1417
      }
1418

1419
      /*
1420
      call_struct_simple_ptr_return {
1421
         return: ptr(Dummy.StructSimple);
1422
      }
1423

1424
      call_struct_simple_ptr_return_own {
1425
         return: ptr(Dummy.StructSimple) @move;
1426
      }
1427
      */
1428

1429
      struct_complex_in @beta {
1430
         params {
1431
            @in complex: Dummy.StructComplex;
1432
         }
1433
         return: bool;
1434
      }
1435

1436
      /*
1437
      struct_complex_ptr_in @beta {
1438
         params {
1439
            @in complex: ptr(Dummy.StructComplex);
1440
         }
1441
         return: bool;
1442
      }
1443

1444
      struct_complex_ptr_in_own @beta {
1445
         params {
1446
            @in complex: ptr(Dummy.StructComplex) @move;
1447
         }
1448
         return: bool;
1449
      }
1450
      */
1451

1452
      struct_complex_out @beta {
1453
         params {
1454
            @out complex: Dummy.StructComplex;
1455
         }
1456
         return: bool;
1457
      }
1458

1459
      // struct_complex_ptr_out {
1460
      //    params {
1461
      //       @out complex: ptr(Dummy.StructComplex);
1462
      //    }
1463
      //    return: bool;
1464
      // }
1465
      //
1466
      // struct_complex_ptr_out_own {
1467
      //    params {
1468
      //       @out complex: ptr(Dummy.StructComplex) @move;
1469
      //    }
1470
      //    return: bool;
1471
      // }
1472

1473
      struct_complex_return @beta {
1474
         return: Dummy.StructComplex;
1475
      }
1476

1477
      // struct_complex_ptr_return {
1478
      //    return: ptr(Dummy.StructComplex);
1479
      // }
1480
      //
1481
      // struct_complex_ptr_return_own {
1482
      //    return: ptr(Dummy.StructComplex) @move;
1483
      // }
1484

1485
      emit_event_with_string {
1486
         params {
1487
            @in data: string;
1488
         }
1489
      }
1490
      emit_event_with_bool {
1491
         params {
1492
            @in data: bool;
1493
         }
1494
      }
1495
      emit_event_with_int {
1496
         params {
1497
            @in data: int;
1498
         }
1499
      }
1500
      emit_event_with_uint {
1501
         params {
1502
            @in data: uint;
1503
         }
1504
      }
1505
      emit_event_with_float {
1506
         params {
1507
            @in data: float;
1508
         }
1509
      }
1510
      emit_event_with_double {
1511
         params {
1512
            @in data: double;
1513
         }
1514
      }
1515
      emit_event_with_obj {
1516
         params {
1517
            @in data: Dummy.Test_Object;
1518
         }
1519
      }
1520

1521
      emit_event_with_error {
1522
         params {
1523
            @in data: Eina.Error;
1524
         }
1525
      }
1526

1527
      emit_event_with_struct {
1528
         params {
1529
            @in data: Dummy.StructSimple;
1530
         }
1531
      }
1532

1533
      emit_event_with_struct_complex @beta {
1534
         params {
1535
            @in data: Dummy.StructComplex;
1536
         }
1537
      }
1538

1539
      emit_event_with_array {
1540
         params {
1541
            @in data: array<string>;
1542
         }
1543
      }
1544

1545
      emit_event_with_under {
1546
      }
1547

1548
      append_to_strbuf {
1549
         params {
1550
            @in buf: strbuf;
1551
            @in str: string;
1552
         }
1553
      }
1554

1555
      call_append_to_strbuf {
1556
         params {
1557
            @in buf: strbuf;
1558
            @in str: string;
1559
         }
1560
      }
1561

1562
      call_format_cb {
1563
         params {
1564
            @in str: strbuf;
1565
            @in value: const(any_value);
1566
            @in func: Dummy.FormatCb;
1567
         }
1568
      }
1569

1570
      bypass_typedef {
1571
         params {
1572
            @in data: Dummy.MyInt;
1573
            @out receiver: Dummy.MyInt;
1574
         }
1575

1576
         return: Dummy.MyInt;
1577
      }
1578

1579
      @property multi_valued_prop {
1580
         [[ A multi valued property. ]]
1581
         get {}
1582
         set {}
1583
         values {
1584
           prop1: int; [[ Dummy property's first element. ]]
1585
           prop2: int; [[ Dummy property's second element. ]]
1586
         }
1587
      }
1588

1589
      @property klass_prop @static {
1590
         get {}
1591
         set {}
1592
         values {
1593
            prop: int;
1594
         }
1595
      }
1596

1597
      create_cmp_array_objects @static {
1598
      }
1599

1600
      destroy_cmp_array_objects @static {
1601
      }
1602

1603
      /* Futures */
1604

1605
      get_future {
1606
         return: future<any_value_ref>;
1607
      }
1608

1609
      fulfill_promise {
1610
         params {
1611
            @in data: int;
1612
         }
1613
      }
1614

1615
      reject_promise {
1616
         params {
1617
            @in error: Eina.Error;
1618
         }
1619
      }
1620

1621
      /* Accessors */
1622
      clone_accessor {
1623
         params {
1624
            @in acc: accessor<int>;
1625
         }
1626
         return: accessor<int> @move;
1627
      }
1628

1629
      clone_accessor_own {
1630
         params {
1631
            @in acc: accessor<int> @move;
1632
         }
1633
         return: accessor<int> @move;
1634
      }
1635

1636
      @property setter_only {
1637
         set {}
1638
         values {
1639
           prop: int;
1640
         }
1641
      }
1642

1643
      get_setter_only {
1644
         return: int;
1645
      }
1646

1647
      call_find_provider {
1648
         params {
1649
            @in type: const(Efl.Class);
1650
         }
1651
         return: Efl.Object;
1652
      }
1653

1654
      call_find_provider_for_iface {
1655
         return: Efl.Object;
1656
      }
1657

1658
      mirror_value_type @beta @const {
1659
         params {
1660
            @in type: const(ptr(Eina.Value_Type));
1661
         }
1662
         return: const(ptr(Eina.Value_Type));
1663
      }
1664

1665
      @property hidden_object {
1666
         get {}
1667

1668
         values {
1669
            obj: Efl.Object;
1670
         }
1671
      }
1672
      @property iface_value_prop {
1673
         values {
1674
            prop: Dummy.Test_Iface;
1675
         }
1676
      }
1677
      @property iface_klass_prop {
1678
         set {}
1679
         values {
1680
            klass: Efl.Class;
1681
         }
1682
      }
1683
      @property iface_value_from_c {
1684
         get {}
1685
         values {
1686
            prop: Dummy.Test_Iface;
1687
         }
1688
      }
1689

1690
      @property return_type_get_prop {
1691
         get { return: Eina.Success_Flag; }
1692
         set {}
1693
         values { i: int; }
1694
      }
1695

1696
      @property return_type_set_prop {
1697
         set { return: Eina.Success_Flag; }
1698
         get {}
1699
         values { i: int; }
1700
      }
1701

1702
      @property return_type_prop {
1703
         get {
1704
           return: Eina.Success_Flag;
1705
         }
1706
         set {
1707
           return: Eina.Success_Flag;
1708
         }
1709
         values { i: int; }
1710
      }
1711

1712
      @property multi_value_return_type_get_prop {
1713
         get { return: Eina.Success_Flag; }
1714
         set {}
1715
         values
1716
         {
1717
           i: int;
1718
           j: int;
1719
         }
1720
      }
1721

1722
      @property multi_value_return_type_set_prop {
1723
         set { return: Eina.Success_Flag; }
1724
         get {}
1725
         values
1726
         {
1727
           i: int;
1728
           j: int;
1729
         }
1730
      }
1731

1732
      @property multi_value_return_type_prop {
1733
         get {
1734
           return: Eina.Success_Flag;
1735
         }
1736
         set {
1737
           return: Eina.Success_Flag;
1738
         }
1739
         values
1740
         {
1741
           i: int;
1742
           j: int;
1743
         }
1744
      }
1745
}
1746
   implements {
1747
      Efl.Object.constructor;
1748
      Efl.Object.destructor;
1749
      Efl.Object.provider_find;
1750
      Dummy.Test_Iface.emit_nonconflicted;
1751
      Dummy.Test_Iface.iface_prop { get; set; }
1752
      Dummy.Test_Iface.protected_prop { get; set; }
1753
      Dummy.Test_Iface.public_getter_private_setter{ get; set; }
1754
      Dummy.Test_Iface.static_prop{ get; set; }
1755
      Dummy.Test_Iface.method_protected;
1756
      Dummy.Test_Iface.call_method_protected;
1757
   }
1758
   events {
1759
      evt,with,string @hot: string;
1760
      evt,with,bool: bool;
1761
      evt,with,int @hot: int;
1762
      evt,with,uint @hot: uint;
1763
      evt,with,float @hot: float;
1764
      evt,with,double @hot: double;
1765
      evt,with,obj @hot: Dummy.Test_Object;
1766
      evt,with,error @hot: Eina.Error;
1767
      evt,with,struct @hot: Dummy.StructSimple;
1768
      evt,with,struct,complex @beta @hot: Dummy.StructComplex;
1769
      evt,with,array @hot: const(array<string>);
1770
      evt_with,under @hot: void;
1771

1772
      // Extra events to test generation, but not invocation
1773
      evt,with,byte: byte;
1774
      evt,with,ubyte: ubyte;
1775

1776
      evt,with,char: char;
1777

1778
      evt,with,short: short;
1779
      evt,with,ushort: ushort;
1780

1781
      evt,with,llong: llong;
1782
      evt,with,ullong: ullong;
1783

1784
      evt,with,int8 @hot: int8;
1785
      evt,with,uint8 @hot: uint8;
1786

1787
      evt,with,int16 @hot: int16;
1788
      evt,with,uint16 @hot: uint16;
1789

1790
      evt,with,int32 @hot: int32;
1791
      evt,with,uint32 @hot: uint32;
1792

1793
      evt,with,int64 @hot: int64;
1794
      evt,with,uint64 @hot: uint64;
1795

1796
   }
1797
}
1798

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.