object MagicalTypeTricks
Linear Supertypes
Ordering
- Alphabetic
- By Inheritance
Inherited
- MagicalTypeTricks
- AnyRef
- Any
- Hide All
- Show All
Visibility
- Public
- All
Type Members
- trait DoesntHaveImplicit[A, B] extends AnyRef
- trait IsNotEqualTo[A, B] extends AnyRef
- trait IsNotSubclassOf[A, B] extends AnyRef
- type ¬[A] = (A) ⇒ Nothing
- type λ[A] = (¬[A]) ⇒ Nothing
-
type
∪[T, U] = (¬[T] with ¬[U]) ⇒ Nothing
Example of how disjunction can be used:
Example of how disjunction can be used:
import com.datastax.spark.connector.util.MagicalTypeTricks._ def function[T](t: T)(implicit ev: (λ[T] <:< (Int ∪ String))) = { println("t = " + t) } function(5) // t = 5 function("five") // t = five function(5d) // error: Cannot prove that // (Double => Nothing) => Nothing <:< Int => Nothing with String => Nothing => Nothing.
Based on this article.
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
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native() @HotSpotIntrinsicCandidate()
- implicit def doesntHaveImplicit[A, B]: DoesntHaveImplicit[A, B]
- implicit def doesntHaveImplicitAmbiguity1[A, B](implicit ev: B): DoesntHaveImplicit[A, B]
- implicit def doesntHaveImplicitAmbiguity2[A, B](implicit ev: B): DoesntHaveImplicit[A, B]
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
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
- implicit def neq[A, B]: IsNotEqualTo[A, B]
- implicit def neqAmbiguity1[A]: IsNotEqualTo[A, A]
- implicit def neqAmbiguity2[A]: IsNotEqualTo[A, A]
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- implicit def nsub[A, B]: IsNotSubclassOf[A, B]
- implicit def nsubAmbiguity1[A, B >: A]: IsNotSubclassOf[A, B]
- implicit def nsubAmbiguity2[A, B >: A]: IsNotSubclassOf[A, B]
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
Deprecated Value Members
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] ) @Deprecated @deprecated
- Deprecated
(Since version ) see corresponding Javadoc for more information.