eolian: switch Eina.Future instances to future<T>

This commit is contained in:
Daniel Kolesa 2018-05-03 17:13:28 +02:00
parent 3a55fe0bbf
commit f58bdbf23a
11 changed files with 42 additions and 23 deletions

View File

@ -50,7 +50,7 @@ class Efl.Loop (Efl.Task)
This has higher priority, for low priority use This has higher priority, for low priority use
@.idle @.idle
]] ]]
return: ptr(Eina.Future) @owned /* TODO: future<void> */; [[The future handle.]] return: future<void> @owned; [[The future handle.]]
} }
@property throttle { @property throttle {
[[Slow down the loop execution by forcing sleep for a small [[Slow down the loop execution by forcing sleep for a small
@ -75,7 +75,7 @@ class Efl.Loop (Efl.Task)
This is a low priority version of @.job This is a low priority version of @.job
]] ]]
return: ptr(Eina.Future) @owned /* TODO: future<void> */; [[The future handle.]] return: future<void> @owned; [[The future handle.]]
} }
timeout { timeout {
[[A future promise that will be resolved from a clean main [[A future promise that will be resolved from a clean main
@ -83,7 +83,7 @@ class Efl.Loop (Efl.Task)
params { params {
@in time: double; [[The time from now in second that the main loop will wait before triggering it.]] @in time: double; [[The time from now in second that the main loop will wait before triggering it.]]
} }
return: ptr(Eina.Future) @owned /* future<void> */; [[The future handle.]] return: future<void> @owned; [[The future handle.]]
} }
register { register {
[[Will register a manager of a specific class to be answered by eo.provider_find.]] [[Will register a manager of a specific class to be answered by eo.provider_find.]]

View File

@ -143,7 +143,7 @@ class Efl.Task (Efl.Object, Efl.Io.Reader, Efl.Io.Writer, Efl.Io.Closer)
} }
run { run {
[[ Actually run the task ]] [[ Actually run the task ]]
return: ptr(Eina.Future) @owned; [[ A future triggered when task exits and is passed int exit code ]] return: future<void> @owned; [[ A future triggered when task exits and is passed int exit code ]]
} }
end { end {
[[ Request the task end (may send a signal or interrupt [[ Request the task end (may send a signal or interrupt

View File

@ -108,7 +108,7 @@ class Efl.Net.Control.Access_Point (Efl.Loop_Consumer) {
EINPROGRESS (the connection was already ongoing) and EINPROGRESS (the connection was already ongoing) and
EALREADY (the connection was already established). EALREADY (the connection was already established).
]] ]]
return: ptr(Eina.Future) @owned; [[Future for asynchronous connect]] /* NOTE: This should be future<void> */ return: future<void> @owned; [[Future for asynchronous connect]]
} }
disconnect { disconnect {

View File

@ -90,7 +90,7 @@ class Efl.Net.Control.Technology (Efl.Loop_Consumer) {
state. Otherwise allow the system to perform state. Otherwise allow the system to perform
passive scans in a timely manner. passive scans in a timely manner.
]] ]]
return: ptr(Eina.Future) @owned; [[Future return for finished background scan]] return: future<void> @owned; [[Future return for finished background scan]]
} }
} }

View File

@ -112,7 +112,7 @@ class Efl.Net.Ip_Address (Efl.Object) {
family: int @optional; [[Preferred family. AF_UNSPEC or 0 for both, otherwise one of AF_INET or AF_INET6]] family: int @optional; [[Preferred family. AF_UNSPEC or 0 for both, otherwise one of AF_INET or AF_INET6]]
flags: int @optional; [[Flags to use with getaddrinfo(). If 0, default flags are used (AI_V4MAPPED | AI_ADDRCONFIG, if these exist in your system).]] flags: int @optional; [[Flags to use with getaddrinfo(). If 0, default flags are used (AI_V4MAPPED | AI_ADDRCONFIG, if these exist in your system).]]
} }
return: ptr(Eina.Future); [[The resolve results. It contains a list of Efl.Net.Ip_Address, they will be automatically deleted unless you keep a reference to it.]] return: future<const(Efl.Net.Ip_Address.Resolve_Results)>; [[The resolve results. It contains a list of Efl.Net.Ip_Address, they will be automatically deleted unless you keep a reference to it.]]
} }
@property string { @property string {

View File

@ -46,7 +46,7 @@ interface Efl.Model ()
@since 1.14 @since 1.14
]] ]]
return: ptr(Eina.Future); [[Return an error in case the property could not be set, the value that was set otherwise.]] return: future<any_value_ptr>; [[Return an error in case the property could not be set, the value that was set otherwise.]]
} }
get { get {
[[Retrieve the value of a given property name. [[Retrieve the value of a given property name.
@ -98,7 +98,8 @@ interface Efl.Model ()
@in count: uint; [[Range size. If count is 0, start is @in count: uint; [[Range size. If count is 0, start is
ignored.]] ignored.]]
} }
return: ptr(Eina.Future); [[Array of childrens]] /* XXX: is this right? */
return: future<accessor<Efl.Object>>; [[Array of childrens]]
} }
@property children_count { @property children_count {
get { get {

View File

@ -34,7 +34,7 @@ class Efl.Io.Manager (Efl.Loop_Consumer)
@in path: string; [[Path we want to list entries for]] @in path: string; [[Path we want to list entries for]]
paths: EflIoPath; [[Callback called for each packet of files found]] paths: EflIoPath; [[Callback called for each packet of files found]]
} }
return: ptr(Eina.Future) @owned; [[Amount of files found during the listing of the directory]] return: future<uint64> @owned; [[Amount of files found during the listing of the directory]]
} }
direct_ls @const { direct_ls @const {
@ -44,7 +44,7 @@ class Efl.Io.Manager (Efl.Loop_Consumer)
@in recursive: bool; [[If $true, list entries recursively, $false otherwise]] @in recursive: bool; [[If $true, list entries recursively, $false otherwise]]
info: EflIoDirectInfo; [[Callback called for each packet of @Eina.File.Direct.Info]] info: EflIoDirectInfo; [[Callback called for each packet of @Eina.File.Direct.Info]]
} }
return: ptr(Eina.Future) @owned; [[Amount of files found during the listing of the directory]] return: future<uint64> @owned; [[Amount of files found during the listing of the directory]]
} }
stat_ls @const { stat_ls @const {
@ -54,7 +54,7 @@ class Efl.Io.Manager (Efl.Loop_Consumer)
@in recursive: bool; [[If $true, list entries recursively, $false otherwise]] @in recursive: bool; [[If $true, list entries recursively, $false otherwise]]
info: EflIoDirectInfo; [[Callback called for each packet of @Eina.File.Direct.Info]] info: EflIoDirectInfo; [[Callback called for each packet of @Eina.File.Direct.Info]]
} }
return: ptr(Eina.Future) @owned; [[Amount of files found during the listing of the directory]] return: future<uint64> @owned; [[Amount of files found during the listing of the directory]]
} }
// Extended attributes // Extended attributes
@ -64,7 +64,7 @@ class Efl.Io.Manager (Efl.Loop_Consumer)
@in path: string; [[Path we want to list entries for]] @in path: string; [[Path we want to list entries for]]
paths: EflIoPath; [[Callback called for each packet of extended attributes found.]] paths: EflIoPath; [[Callback called for each packet of extended attributes found.]]
} }
return: ptr(Eina.Future) @owned; [[Amount of extended attributes found]] return: future<uint64> @owned; [[Amount of extended attributes found]]
} }
stat @const { stat @const {
@ -72,7 +72,7 @@ class Efl.Io.Manager (Efl.Loop_Consumer)
params { params {
@in path: string; [[Path we want to get stat information for]] @in path: string; [[Path we want to get stat information for]]
} }
return: ptr(Eina.Future); [[Stat information]] return: future<Eina.Stat>; [[Stat information]]
} }
// FIXME: Add helper for Eina.Value to Xattr // FIXME: Add helper for Eina.Value to Xattr
@ -83,10 +83,10 @@ class Efl.Io.Manager (Efl.Loop_Consumer)
data: ptr(Eina.Binbuf); [[Data to set as information]] data: ptr(Eina.Binbuf); [[Data to set as information]]
flags: Eina.Xattr.Flags; [[Extended attributes flags]] flags: Eina.Xattr.Flags; [[Extended attributes flags]]
} }
return: ptr(Eina.Future) @owned; [[Future for asynchronous set operation]] return: future<uint64> @owned; [[Future for asynchronous set operation]]
} }
get { get {
return: ptr(Eina.Future) @owned; [[Information]] return: future<Eina.Binbuf> @owned; [[Information]]
} }
keys { keys {
path: string; [[File path]] path: string; [[File path]]
@ -103,7 +103,7 @@ class Efl.Io.Manager (Efl.Loop_Consumer)
@in path: string; [[Path to file]] @in path: string; [[Path to file]]
@in shared: bool; [[$true if the file can be accessed by others, $false otherwise]] @in shared: bool; [[$true if the file can be accessed by others, $false otherwise]]
} }
return: ptr(Eina.Future) @owned; [[Eina file handle]] return: future<Eina.File> @owned; [[Eina file handle]]
} }
close @const { close @const {
[[Closes an open Eina.File.]] [[Closes an open Eina.File.]]
@ -111,7 +111,7 @@ class Efl.Io.Manager (Efl.Loop_Consumer)
@in file: ptr(Eina.File); [[Eina file handle]] @in file: ptr(Eina.File); [[Eina file handle]]
// Here we're just interested whether the promise was fullfilled or not. No value needed. // Here we're just interested whether the promise was fullfilled or not. No value needed.
} }
return: ptr(Eina.Future) @owned; [[Close return code]] return: future<int> @owned; [[Close return code]]
} }
} }
} }

View File

@ -12,7 +12,7 @@ mixin Efl.Selection {
@in data: Eina.Slice; @in data: Eina.Slice;
@in seat: uint;[[Specified seat for multiple seats case.]] @in seat: uint;[[Specified seat for multiple seats case.]]
} }
return: ptr(Eina.Future); [[Future for tracking when the selection is lost]] return: future<void>; [[Future for tracking when the selection is lost]]
} }
selection_get { selection_get {
[[Get the data from the object that has selection]] [[Get the data from the object that has selection]]

View File

@ -11,7 +11,7 @@ class Efl.Selection_Manager (Efl.Object) {
@in data: Eina.Slice; [[Selection data]] @in data: Eina.Slice; [[Selection data]]
@in seat: uint @optional;[[Specified seat for multiple seats case.]] @in seat: uint @optional;[[Specified seat for multiple seats case.]]
} }
return: ptr(Eina.Future); [[Future for tracking when the selection is lost]] return: future<void>; [[Future for tracking when the selection is lost]]
} }
selection_get @beta { selection_get @beta {
[[Get selection]] [[Get selection]]

View File

@ -78,5 +78,23 @@ struct @extern Eina.Rw_Slice {
} }
struct @extern Eina.Value.Type; [[Eina value type]] struct @extern Eina.Value.Type; [[Eina value type]]
struct @extern Eina.Future; [[Eina_Future handle]]
struct @extern Eina.Promise; [[Eina_Promise handle]] struct @extern Eina.Stat {
[[The structure to store some file statistics.]]
dev : ulong; [[The device where this file is located]]
ino : ulong; [[The inode]]
mode : uint; [[The mode]]
nlink : uint; [[The link number]]
uid : uint; [[The owner user id]]
gid : uint; [[The owner group id]]
rdev : ulong; [[The remote device]]
size : ulong; [[The file size in bytes]]
blksize : ulong; [[The block size in bytes]]
blocks : ulong; [[The number of blocks allocated]]
atime : ulong; [[The tilestamp when the file was last accessed]]
atimensec: ulong; [[The nano version of the timestmap when the file was last accessed]]
mtime : ulong; [[The tilestamp when the file was modified]]
mtimensec: ulong; [[The nano version of the timestmap when the file was modified]]
ctime : ulong; [[The tilestamp when the file was created]]
ctimensec: ulong; [[The nano version of the timestmap when the file was created]]
}

View File

@ -263,7 +263,7 @@ class Efl.Canvas.Text (Efl.Canvas.Object, Efl.Text,
@since 1.21 @since 1.21
]] ]]
legacy: null; legacy: null;
return: ptr(Eina.Future) @owned; [[Future for layout result]] return: future<Eina.Rect> @owned; [[Future for layout result]]
} }
} }
implements { implements {