class Complex extends Efl.Object { data: Complex_Data; methods { // container test inptrcont { params { l: list; } } inclasscont { params { l: list; } } incontcont { params { l: list>; } } incontcontown { params { l: list> @move; } } incontowncontown { params { l: list @move> @move; } } incontowncont { params { l: list @move>; } } instringcont { params { l: list; } } instringowncont { params { l: list; } } instringcontown { params { l: list @move; } } inarray { params { l: array; } } inarrayown { params { l: array @move; } } inhash { params { l: hash; } } inhashown { params { l: hash @move; } } initerator { params { l: iterator; } } initeratorown { params { l: iterator @move; } } inaccessor { params { l: accessor; } } inaccessorown { params { l: accessor @move; } } // out outclasscont { params { @out l: list; } } outcontcont { params { @out l: list>; } } outcontcontown { params { @out l: list> @move; } } outcontowncontown { params { @out l: list @move> @move; } } outcontowncont { params { @out l: list @move>; } } outstringcont { params { @out l: list; } } outstringowncont { params { @out l: list; } } outstringcontown { params { @out l: list @move; } } outarray { params { @out l: array; } } outarrayown { params { @out l: array @move; } } outhash { params { @out l: hash; } } outhashown { params { @out l: hash @move; } } outiterator { params { @out l: iterator; } } outiteratorown { params { @out l: iterator @move; } } outaccessor { params { @out l: accessor; } } outaccessorown { params { @out l: accessor @move; } } foo { params { l: list; } } bar { return: array; } wrapper_r { return: Complex; } wrapper_in { params { @in a1: Complex; } } wrapper_inout { params { @inout a1: Complex; } } wrapper_out { params { @out a1: Complex; } } } }