aikar / TaskChain

TaskChain Control Flow framework. Helps facilitate running tasks on an application's "Main Thread" (such as a game), and tasks off the main (async).
https://taskchain.emc.gs
MIT License
203 stars 38 forks source link

Data Wrapper Chains #10

Open aikar opened 8 years ago

aikar commented 8 years ago

any data wrapper based method should be able to return a DataWrappedChain. There should be a chain for 2-6 of each data class.

The chains should provide extra methods so you can access the data properties such as .sync((var1, var2, var3) -> { instead of (data) -> { data.var1

to avoid massive duplication of methods, were going to need to update add0() to be overloaded on a data wrapped chain to call it on the wrapped chain instead of the wrapper

Concerns:

Can we pull this off returning a different object without breaking existing API's? I think so when adding overloaded versions of each api.

Need to really see if we can break out these API methods into interfaces to start to organize the API names better.