TreeTransformScopeInstance
Attributes
- Source
- TreeTransformScope.scala
- Graph
-
- Supertypes
-
trait NonLocalReturnsTreeTransform[F, T, C]trait ValDefTreeTransform[F, T, C]trait BlockTreeTransform[F, T, C]trait SelectOuterTreeTransform[F, T, C]trait InlinedTreeTransform[F, T, C]trait AsyncTreeShifter[F, T, C]trait MatchTreeTransform[F, T, C]trait LambdaTreeTransform[F, T, C]trait SelectTreeTransform[F, T, C]trait AwaitTreeTransform[F, T, C]trait ApplicationHelper[F, T, C]trait ApplyArgRecordScope[F, T, C]trait ApplyTreeTransform[F, T, C]trait RootTreeTransform[F, T, C]trait TypeApplyTreeTransform[F, T, C]trait KnownTreeFragments[F, T, C]trait CpsTreeScope[F, T, C]class Objecttrait Matchableclass AnyShow all
Members list
Type members
Inherited classlikes
append cps tree, which is frs and then snd. we use this representation instead Mapped/Flatmapped in cases, where we later can apply await to append term and simplify tree instead wrapping awaited tree in extra flatMap
append cps tree, which is frs and then snd. we use this representation instead Mapped/Flatmapped in cases, where we later can apply await to append term and simplify tree instead wrapping awaited tree in extra flatMap
Attributes
- Inherited from:
- CpsTreeScope
- Source
- CpsTree.scala
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass CpsTreeclass Objecttrait Matchableclass AnyShow all
Attributes
- Inherited from:
- ApplyArgRecordScope
- Source
- ApplyArgRecordScope.scala
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait ApplyArgRecordclass Objecttrait Matchableclass AnyShow all
Attributes
- Inherited from:
- ApplyArgRecordScope
- Source
- ApplyArgRecordScope.scala
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait ApplyArgRecordclass Objecttrait Matchableclass AnyShow all
Attributes
- Inherited from:
- ApplyArgRecordScope
- Source
- ApplyArgRecordScope.scala
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait ApplyArgRecordclass Objecttrait Matchableclass AnyShow all
Attributes
- Inherited from:
- ApplyArgRecordScope
- Source
- ApplyArgRecordScope.scala
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait ApplyArgRecordclass Objecttrait Matchableclass AnyShow all
Attributes
- Inherited from:
- ApplyArgRecordScope
- Source
- ApplyArgRecordScope.scala
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait ApplyArgRecordclass Objecttrait Matchableclass AnyShow all
Attributes
- Inherited from:
- ApplyArgRecordScope
- Source
- ApplyArgRecordScope.scala
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait ApplyArgRecordclass Objecttrait Matchableclass AnyShow all
Attributes
- Inherited from:
- ApplyArgRecordScope
- Source
- ApplyArgRecordScope.scala
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
class ApplyArgByNameRecordclass ApplyArgInlinedRecordclass ApplyArgLambdaRecordclass ApplyArgNamedRecordclass ApplyArgRepeatRecordShow all
Attributes
- Inherited from:
- ApplyArgRecordScope
- Source
- ApplyArgRecordScope.scala
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait ApplyArgRecordclass Objecttrait Matchableclass AnyShow all
Attributes
- Inherited from:
- ApplyArgRecordScope
- Source
- ApplyArgRecordScope.scala
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Inherited from:
- ApplyArgRecordScope
- Source
- ApplyArgRecordScope.scala
- Supertypes
-
trait Producttrait Mirrorclass Objecttrait Matchableclass Any
Attributes
- Inherited from:
- ApplyArgRecordScope
- Source
- ApplyArgRecordScope.scala
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Inherited from:
- ApplyArgRecordScope
- Source
- ApplyArgRecordScope.scala
- Supertypes
-
trait Producttrait Mirrorclass Objecttrait Matchableclass Any
Attributes
- Inherited from:
- CpsTreeScope
- Source
- CpsTree.scala
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass CpsTreeclass Objecttrait Matchableclass AnyShow all
Attributes
- Inherited from:
- CpsTreeScope
- Source
- CpsTree.scala
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass AsyncCpsTreeclass CpsTreeclass Objecttrait Matchableclass AnyShow all
Attributes
- Inherited from:
- CpsTreeScope
- Source
- CpsTree.scala
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass AsyncCpsTreeclass CpsTreeclass Objecttrait Matchableclass AnyShow all
Attributes
- Inherited from:
- RootTreeTransform
- Source
- RootTreeTransform.scala
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Inherited from:
- CpsTreeScope
- Source
- CpsTree.scala
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass CpsTreeclass Objecttrait Matchableclass AnyShow all
Attributes
- Inherited from:
- CpsTreeScope
- Source
- CpsTree.scala
- Supertypes
-
trait Producttrait Mirrorclass Objecttrait Matchableclass Any
Attributes
- Inherited from:
- ApplyArgBuilderScope
- Source
- ApplyArgBuilderScope.scala
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
when we have swhifted function, which should return F[A] but we want to have in F[A] methods with special meaning, which should be performed on F[_] before jumping into monad (exampe: Iterable.withFilter) we will catch in ApplyTree such methods and substitute to appropriative calls of shifted.
when we have swhifted function, which should return F[A] but we want to have in F[A] methods with special meaning, which should be performed on F[_] before jumping into monad (exampe: Iterable.withFilter) we will catch in ApplyTree such methods and substitute to appropriative calls of shifted.
Attributes
- Inherited from:
- CpsTreeScope
- Source
- CpsTree.scala
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass CpsTreeclass Objecttrait Matchableclass AnyShow all
Attributes
- Inherited from:
- CpsTreeScope
- Source
- CpsTree.scala
- Supertypes
-
trait Sumtrait Mirrorclass Objecttrait Matchableclass Any
Attributes
- Inherited from:
- MethodParamsDescriptorScope
- Source
- MethodParamsDescriptorScope.scala
- Supertypes
Attributes
- Inherited from:
- CpsTreeScope
- Source
- CpsTree.scala
- Supertypes
-
trait Singletontrait Producttrait Mirrortrait Serializabletrait Producttrait Equalsclass CpsTreeclass Objecttrait Matchableclass AnyShow all
Attributes
- Inherited from:
- MethodParamsDescriptorScope
- Source
- MethodParamsDescriptorScope.scala
- Supertypes
Attributes
- Inherited from:
- CpsTreeScope
- Source
- CpsTree.scala
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass AsyncCpsTreeclass CpsTreeclass Objecttrait Matchableclass AnyShow all
Attributes
- Inherited from:
- InlinedTreeTransform
- Source
- InlinedTreeTransform.scala
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait InlinedBindingRecordclass Objecttrait Matchableclass AnyShow all
Attributes
- Inherited from:
- InlinedTreeTransform
- Source
- InlinedTreeTransform.scala
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
Attributes
- Inherited from:
- InlinedTreeTransform
- Source
- InlinedTreeTransform.scala
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Inherited from:
- CpsTreeScope
- Source
- CpsTree.scala
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass CpsTreeclass Objecttrait Matchableclass AnyShow all
Attributes
- Inherited from:
- InlinedTreeTransform
- Source
- InlinedTreeTransform.scala
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait InlinedBindingRecordclass Objecttrait Matchableclass AnyShow all
Attributes
- Inherited from:
- InlinedTreeTransform
- Source
- InlinedTreeTransform.scala
- Supertypes
-
trait Serializabletrait Producttrait Equalstrait InlinedBindingRecordclass Objecttrait Matchableclass AnyShow all
Attributes
- Inherited from:
- CpsTreeScope
- Source
- CpsTree.scala
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass AsyncCpsTreeclass CpsTreeclass Objecttrait Matchableclass AnyShow all
Attributes
- Inherited from:
- TreeTransformScope
- Source
- TreeTransformScope.scala
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Inherited from:
- MethodParamsDescriptorScope
- Source
- MethodParamsDescriptorScope.scala
- Supertypes
-
class Objecttrait Matchableclass Any
Attributes
- Inherited from:
- MethodParamsDescriptorScope
- Source
- MethodParamsDescriptorScope.scala
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
Attributes
- Inherited from:
- MethodParamsDescriptorScope
- Source
- MethodParamsDescriptorScope.scala
- Supertypes
Attributes
- Inherited from:
- ApplyArgBuilderScope
- Source
- ApplyArgBuilderScope.scala
- Supertypes
-
class Objecttrait Matchableclass Any
Application with one list of params.
Application with one list of params.
Attributes
- Inherited from:
- PartialShiftedApplyScope
- Source
- PartialShiftedApplyScope.scala
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Inherited from:
- CpsTreeScope
- Source
- CpsTree.scala
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass CpsTreeclass Objecttrait Matchableclass AnyShow all
represent select expression, which can be in monad or outside monad.
represent select expression, which can be in monad or outside monad.
constructor is not devoted to used directly: use SelectTypeApplyCpsTree.create instead. selects is reversed (i.e. external added to head)
Attributes
- Inherited from:
- CpsTreeScope
- Source
- CpsTree.scala
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass CpsTreeclass Objecttrait Matchableclass AnyShow all
Attributes
- Inherited from:
- CpsTreeScope
- Source
- CpsTree.scala
- Supertypes
-
trait Producttrait Mirrorclass Objecttrait Matchableclass Any
Attributes
- Inherited from:
- CpsTreeScope
- Source
- CpsTree.scala
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass Objecttrait Matchableclass AnyShow all
Attributes
- Inherited from:
- CpsTreeScope
- Source
- CpsTree.scala
- Supertypes
-
trait Serializabletrait Producttrait Equalsclass CpsTreeclass Objecttrait Matchableclass AnyShow all
Inherited and Abstract classlikes
Attributes
- Inherited from:
- CpsTreeScope
- Source
- CpsTree.scala
- Supertypes
- Known subtypes
Attributes
- Inherited from:
- CpsTreeScope
- Source
- CpsTree.scala
- Supertypes
-
class Objecttrait Matchableclass Any
- Known subtypes
-
class AppendCpsTreeclass AsyncCpsTreeclass AwaitAsyncCpsTreeclass AwaitSyncCpsTreeclass FlatMappedCpsTreeclass MappedCpsTreeclass AsyncLambdaCpsTreeclass BlockCpsTreeclass CallChainSubstCpsTreeobject EmptyCpsTreeclass InlinedCpsTreeclass PureCpsTreeclass SelectTypeApplyCpsTreeclass ValCpsTreeShow all
Value members
Inherited methods
Attributes
- Inherited from:
- AwaitTreeTransform
- Source
- AwaitTreeTransform.scala
Attributes
- Inherited from:
- ApplyArgRecordScope
- Source
- ApplyArgRecordScope.scala
Attributes
- Inherited from:
- AsyncTreeShifter
- Source
- AsyncTreeShifter.scala
Attributes
- Inherited from:
- AsyncTreeShifter
- Source
- AsyncTreeShifter.scala
Attributes
- Inherited from:
- AsyncTreeShifter
- Source
- AsyncTreeShifter.scala
Attributes
- Inherited from:
- AsyncTreeShifter
- Source
- AsyncTreeShifter.scala
Attributes
- Inherited from:
- ApplyTreeTransform
- Source
- ApplyTreeTransform.scala
Attributes
- Inherited from:
- ApplyTreeTransform
- Source
- ApplyTreeTransform.scala
Attributes
- Inherited from:
- ApplyTreeTransform
- Source
- ApplyTreeTransform.scala
Attributes
- Inherited from:
- InlinedTreeTransform
- Source
- InlinedTreeTransform.scala
method type for (p1 ... pn) => F[otpe]
method type for (p1 ... pn) => F[otpe]
Attributes
- Inherited from:
- LambdaTreeTransform
- Source
- LambdaTreeTransform.scala
Attributes
- Inherited from:
- ApplyTreeTransform
- Source
- ApplyTreeTransform.scala
Attributes
- Inherited from:
- RootTreeTransform
- Source
- RootTreeTransform.scala
Attributes
- Inherited from:
- ApplyTreeTransform
- Source
- ApplyTreeTransform.scala
Attributes
- Inherited from:
- ApplyTreeTransform
- Source
- ApplyTreeTransform.scala
Attributes
- Inherited from:
- InlinedTreeTransform
- Source
- InlinedTreeTransform.scala
How to handle arguments? We want keep evaluation order from left to right, so, imagine we have function f(a1,a2,a3) and a2 is async, a1, a3 - sync. we will transform this to
How to handle arguments? We want keep evaluation order from left to right, so, imagine we have function f(a1,a2,a3) and a2 is async, a1, a3 - sync. we will transform this to
{ val arg1 = a1;
transform(a2).flatMap( x =>
{ val arg2 = x;
val arg3 = a3;
f(arg1, arg2, arg3)
} }
more generally we at first generate block: { arg1 = a1; ..... argN = aN; f(arg1,...argN) } and then transform one, knowing that all arguments to f are sync (of course, if all arguments are sync, we just call f(arg1,... arg2) without all this machinery)
Value parameters
- applyTerm
-
= Apply(fun, args) - origin apply
- args
-
- first argument list
- cpsFun
-
- cps-sed of representation of functions
- fun
-
- function to apply (with type-paerameters)
- tails
-
- next argument lists if any
- unpure
-
- if true, that this is call from shifted substitution, which is already return F[_] by design.
Attributes
- Inherited from:
- ApplyTreeTransform
- Source
- ApplyTreeTransform.scala
Attributes
- Inherited from:
- ApplyTreeTransform
- Source
- ApplyTreeTransform.scala
Attributes
- Inherited from:
- ApplyTreeTransform
- Source
- ApplyTreeTransform.scala
Attributes
- Inherited from:
- ApplyTreeTransform
- Source
- ApplyTreeTransform.scala
Attributes
- Inherited from:
- ApplyTreeTransform
- Source
- ApplyTreeTransform.scala
Attributes
- Inherited from:
- ApplyTreeTransform
- Source
- ApplyTreeTransform.scala
applyTerm = Apply(fun, args) fun = TypeApply(obj,targs)
applyTerm = Apply(fun, args) fun = TypeApply(obj,targs)
Attributes
- Inherited from:
- ApplyTreeTransform
- Source
- ApplyTreeTransform.scala
Attributes
- Inherited from:
- ApplyTreeTransform
- Source
- ApplyTreeTransform.scala
Attributes
- Inherited from:
- TreeTransformScope
- Source
- TreeTransformScope.scala
Attributes
- Inherited from:
- ApplyTreeTransform
- Source
- ApplyTreeTransform.scala
Attributes
- Inherited from:
- ApplyTreeTransform
- Source
- ApplyTreeTransform.scala
Attributes
- Inherited from:
- TreeTransformScope
- Source
- TreeTransformScope.scala
Attributes
- Inherited from:
- TreeTransformScope
- Source
- TreeTransformScope.scala
case Apply(fun,args) transform application
case Apply(fun,args) transform application
tails -- list of prepared sequence of curried arguments.
Attributes
- Inherited from:
- ApplyTreeTransform
- Source
- ApplyTreeTransform.scala
Attributes
- Inherited from:
- AwaitTreeTransform
- Source
- AwaitTreeTransform.scala
Attributes
- Inherited from:
- BlockTreeTransform
- Source
- BlockTreeTransform.scala
Attributes
- Inherited from:
- InlinedTreeTransform
- Source
- InlinedTreeTransform.scala
Attributes
- Inherited from:
- LambdaTreeTransform
- Source
- LambdaTreeTransform.scala
Attributes
- Inherited from:
- MatchTreeTransform
- Source
- MatchTreeTransform.scala
Attributes
- Inherited from:
- AwaitTreeTransform
- Source
- AwaitTreeTransform.scala
Attributes
- Inherited from:
- NonLocalReturnsTreeTransform
- Source
- NonLocalReturnsTreeTransform.scala
Attributes
- Inherited from:
- NonLocalReturnsTreeTransform
- Source
- NonLocalReturnsTreeTransform.scala
Attributes
- Inherited from:
- AwaitTreeTransform
- Source
- AwaitTreeTransform.scala
Attributes
- Inherited from:
- RootTreeTransform
- Source
- RootTreeTransform.scala
Attributes
- Inherited from:
- RootTreeTransform
- Source
- RootTreeTransform.scala
Attributes
- Inherited from:
- SelectTreeTransform
- Source
- SelectTreeTransform.scala
Attributes
- Inherited from:
- SelectOuterTreeTransform
- Source
- SelectOuterTreeTransform.scala
Attributes
- Inherited from:
- TypeApplyTreeTransform
- Source
- TypeApplyTreeTransform.scala
Attributes
- Inherited from:
- ValDefTreeTransform
- Source
- ValDefTreeTransform.scala
Attributes
- Inherited from:
- TreeTransformScope
- Source
- TreeTransformScope.scala
Attributes
- Inherited from:
- TreeTransformScope
- Source
- TreeTransformScope.scala
Attributes
- Inherited from:
- ApplyTreeTransform
- Source
- ApplyTreeTransform.scala
Attributes
- Inherited from:
- ApplyTreeTransform
- Source
- ApplyTreeTransform.scala
Shift the functional typr tpe. annotated ny makecps. If the function type does not contains hight-order function which can be shifted - report error. (we call shift only for methods, annotated with makeCps) Note, that is is not the type of the shifted methods (because it includes yet one type parameter F[_]), it is just the type which used to make typer happy with the shifted arguments. This type will be throwed out on the later stage.
Shift the functional typr tpe. annotated ny makecps. If the function type does not contains hight-order function which can be shifted - report error. (we call shift only for methods, annotated with makeCps) Note, that is is not the type of the shifted methods (because it includes yet one type parameter F[_]), it is just the type which used to make typer happy with the shifted arguments. This type will be throwed out on the later stage.
Attributes
- Inherited from:
- ApplyTreeTransform
- Source
- ApplyTreeTransform.scala
Attributes
- Inherited from:
- ApplyTreeTransform
- Source
- ApplyTreeTransform.scala
Attributes
- Inherited from:
- ApplyTreeTransform
- Source
- ApplyTreeTransform.scala
Attributes
- Inherited from:
- ApplyTreeTransform
- Source
- ApplyTreeTransform.scala
Attributes
- Inherited from:
- ApplyTreeTransform
- Source
- ApplyTreeTransform.scala
Attributes
- Inherited from:
- ApplyTreeTransform
- Source
- ApplyTreeTransform.scala
Attributes
- Inherited from:
- ApplyTreeTransform
- Source
- ApplyTreeTransform.scala
Attributes
- Inherited from:
- ApplyTreeTransform
- Source
- ApplyTreeTransform.scala
Attributes
- Inherited from:
- ApplyTreeTransform
- Source
- ApplyTreeTransform.scala
Attributes
- Inherited from:
- ApplyArgRecordScope
- Source
- ApplyArgRecordScope.scala
Attributes
- Inherited from:
- ApplyTreeTransform
- Source
- ApplyTreeTransform.scala
Attributes
- Inherited from:
- TreeTransformScope
- Source
- TreeTransformScope.scala
Attributes
- Inherited from:
- ApplyTreeTransform
- Source
- ApplyTreeTransform.scala
Attributes
- Inherited from:
- ApplyTreeTransform
- Source
- ApplyTreeTransform.scala
Concrete fields
Attributes
- Source
- TreeTransformScope.scala
Inherited fields
Attributes
- Inherited from:
- KnownTreeFragments
- Source
- KnownTreeFragments.scala
Attributes
- Inherited from:
- KnownTreeFragments
- Source
- KnownTreeFragments.scala
Attributes
- Inherited from:
- KnownTreeFragments
- Source
- KnownTreeFragments.scala
Attributes
- Inherited from:
- KnownTreeFragments
- Source
- KnownTreeFragments.scala
Attributes
- Inherited from:
- KnownTreeFragments
- Source
- KnownTreeFragments.scala
Attributes
- Inherited from:
- KnownTreeFragments
- Source
- KnownTreeFragments.scala
Attributes
- Inherited from:
- KnownTreeFragments
- Source
- KnownTreeFragments.scala
Attributes
- Inherited from:
- KnownTreeFragments
- Source
- KnownTreeFragments.scala
Attributes
- Inherited from:
- KnownTreeFragments
- Source
- KnownTreeFragments.scala
Attributes
- Inherited from:
- KnownTreeFragments
- Source
- KnownTreeFragments.scala
Attributes
- Inherited from:
- KnownTreeFragments
- Source
- KnownTreeFragments.scala
Attributes
- Inherited from:
- KnownTreeFragments
- Source
- KnownTreeFragments.scala
Attributes
- Inherited from:
- KnownTreeFragments
- Source
- KnownTreeFragments.scala
Attributes
- Inherited from:
- KnownTreeFragments
- Source
- KnownTreeFragments.scala
Attributes
- Inherited from:
- KnownTreeFragments
- Source
- KnownTreeFragments.scala
Attributes
- Inherited from:
- KnownTreeFragments
- Source
- KnownTreeFragments.scala
Attributes
- Inherited from:
- KnownTreeFragments
- Source
- KnownTreeFragments.scala
Attributes
- Inherited from:
- KnownTreeFragments
- Source
- KnownTreeFragments.scala
Attributes
- Inherited from:
- KnownTreeFragments
- Source
- KnownTreeFragments.scala
Attributes
- Inherited from:
- KnownTreeFragments
- Source
- KnownTreeFragments.scala
Attributes
- Inherited from:
- KnownTreeFragments
- Source
- KnownTreeFragments.scala
Attributes
- Inherited from:
- KnownTreeFragments
- Source
- KnownTreeFragments.scala
Extensions
Inherited extensions
Attributes
- Inherited from:
- CpsTreeScope
- Source
- CpsTree.scala
Attributes
- Inherited from:
- CpsTreeScope
- Source
- CpsTree.scala
Attributes
- Inherited from:
- CpsTreeScope
- Source
- CpsTree.scala
Attributes
- Inherited from:
- CpsTreeScope
- Source
- CpsTree.scala
Attributes
- Inherited from:
- CpsTreeScope
- Source
- CpsTree.scala
Attributes
- Inherited from:
- CpsTreeScope
- Source
- CpsTree.scala
Implicits
Implicits
Attributes
- Source
- TreeTransformScope.scala
Inherited and Abstract implicits
Attributes
- Inherited from:
- TreeTransformScope
- Source
- TreeTransformScope.scala
Attributes
- Inherited from:
- TreeTransformScope
- Source
- TreeTransformScope.scala
Attributes
- Inherited from:
- TreeTransformScope
- Source
- TreeTransformScope.scala