Ignore:
Timestamp:
Dec 7, 2016, 2:47:53 PM (7 years ago)
Author:
Thierry Delisle <tdelisle@…>
Branches:
ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, deferred_resn, demangler, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, new-env, no_list, persistent-indexer, pthread-emulation, qualifiedEnum, resolv-new, with_gc
Children:
550a338
Parents:
a68caae
Message:

Coroutines no longer require virtual pointers or any code beyond the get_coroutine routine

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/libcfa/concurrency/threads

    ra68caae r80d9e49  
    2323
    2424void ?{}(coroutine* this);
    25 void ?{}(coroutine* this, covptr_t* object);
    2625
    27 trait coroutine_t(dtype T) {
     26trait is_coroutine(dtype T) {
    2827      void co_main(T* this);
    29       covptr_t* vtable(T* this);
     28      coroutine* get_coroutine(T* this);
    3029};
    3130
    3231void suspend(void);
    3332
    34 forall(dtype T | coroutine_t(T))
     33forall(dtype T | is_coroutine(T))
    3534void resume(T* cor);
     35
     36forall(dtype T | is_coroutine(T))
     37void prime(T* cor);
    3638
    3739#endif //__THREADS_H__
Note: See TracChangeset for help on using the changeset viewer.