class Name1.Name2.Type_Generation (Efl.Object) { data: Type_Generation_Data; methods { // inref inrefint { params { @in v: ref(int); } } inrefintown { params { @in v: own(ref(int)); } } inrefintownfree { params { @in v: free(own(ref(int)), free); } } // in void ptr invoidptr { params { @in v: void_ptr; } } inint { params { @in v: int; } } inintptr { params { @in v: ref(int); } } inintptrown { params { @in v: own(ref(int)); } } inintptrownfree { params { @in v: free(own(ref(int)), free); } } instring { params { @in v: string; } } instringptr { params { @in v: ref(string); } } instringown { params { @in v: own(string); } } instringptrown { params { @in v: own(ref(string)); } } instringshare { params { @in v: stringshare; } } instringshareown { params { @in v: own(stringshare); } } // return returnrefint { return: ref(int); } returnvoidptr { return: void_ptr; } returnint { return: int; } returnintptr { return: ref(int); } returnintptrown { return: own(ref(int)); } returnintptrownfree { params { @in v: free(own(ref(int)), free); } } returnstring { return: string; } returnstringptr { return: ref(string); } returnstringown { return: own(string); } returnstringownptr { return: own(ref(string)); } returnstringshare { return: stringshare; } returnstringshareown { return: own(stringshare); } // out outvoidptr { params { @out v: void_ptr; } } outint { params { @out v: int; } } outintptr { params { @out v: ref(int); } } outintptrown { params { @out v: own(ref(int)); } } outintptrownfree { params { @out v: free(own(ref(int)), free); } } outstringshare { params { @out v: stringshare; } } outstringshareown { params { @out v: own(stringshare); } } // classname inclassname { params { @in v: Name1.Name2.Type_Generation; } } outclassname { params { @out v: Name1.Name2.Type_Generation; } } inoutclassname { params { @inout v: Name1.Name2.Type_Generation; } } optionalinvoidptr { params { @in v: void_ptr @optional; } } optionalinint { params { @in v: int @optional; } } optionalinintptr { params { @in v: ref(int) @optional; } } optionalinintptrown { params { @in v: own(ref(int)) @optional; } } optionalinintptrownfree { params { @in v: free(own(ref(int)), free) @optional; } } optionaloutvoidptr { params { @out v: void_ptr @optional; } } optionaloutint { params { @out v: int @optional; } } optionaloutintptr { params { @out v: ref(int) @optional; } } optionaloutintptrown { params { @out v: own(ref(int)) @optional; } } optionaloutintptrownfree { params { @out v: free(own(ref(int)), free) @optional; } } optionalinclassname { params { @in v: Name1.Name2.Type_Generation @optional; } } optionaloutclassname { params { @out v: Name1.Name2.Type_Generation @optional; } } optionalinoutclassname { params { @inout v: Name1.Name2.Type_Generation @optional; } } } }