object GoAsync
async arround go.
Basicly go is
- translate await-like exressions inside inline functions to calls of appropriative async functions.
(or show error if not found).
x.foreach{ x => p; await(x); .. }
become
await( transform-defer( x.foreachAsync{ x => async(p; await(x); ..) }) )
(note, that channel.read macroses are expanded to await-s on this point)
2. transform defer calls if defer statement is found inside go:
asnyc{ p .. defer(x) .. }
become (reallity is a little complext, here is just idea)
{ val d = new Defers(); async{ p .. d.defer(x) .. }.onComplete(d.tryProcess) }
Linear Supertypes
Ordering
- Alphabetic
- By Inheritance
Inherited
- GoAsync
- AnyRef
- Any
- Hide All
- Show All
Visibility
- Public
- All
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##(): Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- def applyAsync[T](c: Context)(nbody: scala.reflect.macros.blackbox.Context.Tree)(ec: scala.reflect.macros.blackbox.Context.Expr[ExecutionContext])(implicit arg0: scala.reflect.macros.blackbox.Context.WeakTypeTag[T]): scala.reflect.macros.blackbox.Context.Tree
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
- def containsDefer[T](c: Context)(body: scala.reflect.macros.blackbox.Context.Expr[T])(implicit arg0: scala.reflect.macros.blackbox.Context.WeakTypeTag[T]): Boolean
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def findAwait(c: Context)(body: scala.reflect.macros.blackbox.Context.Tree): Boolean
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def goImpl[T](c: Context)(body: scala.reflect.macros.blackbox.Context.Expr[T])(ec: scala.reflect.macros.blackbox.Context.Expr[ExecutionContext])(implicit arg0: scala.reflect.macros.blackbox.Context.WeakTypeTag[T]): scala.reflect.macros.blackbox.Context.Expr[Future[T]]
- def goScopeImpl[T](c: Context)(body: scala.reflect.macros.blackbox.Context.Expr[T])(implicit arg0: scala.reflect.macros.blackbox.Context.WeakTypeTag[T]): scala.reflect.macros.blackbox.Context.Expr[T]
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- def transformAsyncBody[T](c: Context)(body: scala.reflect.macros.blackbox.Context.Tree)(implicit arg0: scala.reflect.macros.blackbox.Context.WeakTypeTag[T]): scala.reflect.macros.blackbox.Context.Tree
- def transformDefer[T](c: Context)(body: scala.reflect.macros.blackbox.Context.Tree)(implicit arg0: scala.reflect.macros.blackbox.Context.WeakTypeTag[T]): scala.reflect.macros.blackbox.Context.Tree
- macro def transformDeferMacro[T](body: Future[T]): Future[T]
- def transformDeferMacroImpl[T](c: Context)(body: scala.reflect.macros.blackbox.Context.Expr[Future[T]])(implicit arg0: scala.reflect.macros.blackbox.Context.WeakTypeTag[T]): scala.reflect.macros.blackbox.Context.Expr[Future[T]]
- def transformInlineHofCall1(c: Context)(fun: scala.reflect.macros.blackbox.Context.Tree, param: scala.reflect.macros.blackbox.Context.Tree, body: scala.reflect.macros.blackbox.Context.Tree, implicitParams: List[scala.reflect.macros.blackbox.Context.Tree]): scala.reflect.macros.blackbox.Context.Tree
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])