# IntoPoly

### Related Docs: object IntoPoly | package eff

#### trait IntoPoly[R <: Effects, U, A] extends AnyRef

Trait for polymorphic recursion into Eff[?, A]

The idea is to deal with one effect at the time:

• if the effect stack is M |: R and if U contains M we transform each "Union[R, X]" in the Impure case into a Union for U and we try to recurse on other effects present in R
• if the effect stack is M |: NoEffect and if U contains M we just "inject" the M[X] effect into Eff[U, A] using the Member typeclass if M is not present when we decompose we throw an exception. This case should never happen because if there is no other effect in the stack there should be at least something producing a value of type A
Linear Supertypes
Ordering
1. Alphabetic
2. By Inheritance
Inherited
1. IntoPoly
2. AnyRef
3. Any
1. Hide All
2. Show All
Visibility
1. Public
2. All

### Concrete Value Members

1. #### final def !=(arg0: Any): Boolean

Definition Classes
AnyRef → Any
2. #### final def ##(): Int

Definition Classes
AnyRef → Any
3. #### final def ==(arg0: Any): Boolean

Definition Classes
AnyRef → Any
4. #### final def asInstanceOf[T0]: T0

Definition Classes
Any
5. #### def clone(): AnyRef

Attributes
protected[java.lang]
Definition Classes
AnyRef
Annotations
@throws( ... )
6. #### final def eq(arg0: AnyRef): Boolean

Definition Classes
AnyRef
7. #### def equals(arg0: Any): Boolean

Definition Classes
AnyRef → Any
8. #### def finalize(): Unit

Attributes
protected[java.lang]
Definition Classes
AnyRef
Annotations
@throws( classOf[java.lang.Throwable] )
9. #### final def getClass(): Class[_]

Definition Classes
AnyRef → Any
10. #### def hashCode(): Int

Definition Classes
AnyRef → Any
11. #### final def isInstanceOf[T0]: Boolean

Definition Classes
Any
12. #### final def ne(arg0: AnyRef): Boolean

Definition Classes
AnyRef
13. #### final def notify(): Unit

Definition Classes
AnyRef
14. #### final def notifyAll(): Unit

Definition Classes
AnyRef
15. #### final def synchronized[T0](arg0: ⇒ T0): T0

Definition Classes
AnyRef
16. #### def toString(): String

Definition Classes
AnyRef → Any
17. #### final def wait(): Unit

Definition Classes
AnyRef
Annotations
@throws( ... )
18. #### final def wait(arg0: Long, arg1: Int): Unit

Definition Classes
AnyRef
Annotations
@throws( ... )
19. #### final def wait(arg0: Long): Unit

Definition Classes
AnyRef
Annotations
@throws( ... )