|
Scala example source code file (Type.scala)
The Scala Type.scala source code/* __ *\ ** ________ ___ / / ___ Scala API ** ** / __/ __// _ | / / / _ | (c) 2002-2011, LAMP/EPFL ** ** __\ \/ /__/ __ |/ /__/ __ | http://scala-lang.org/ ** ** /____/\___/_/ |_/____/_/ | | ** ** |/ ** \* */ package scala.reflect /** This type is required by the compiler and <b>should not be used in client code. */ abstract class Type /** This type is required by the compiler and <b>should not be used in client code. */ case object NoPrefix extends Type /** This type is required by the compiler and <b>should not be used in client code. */ case object NoType extends Type /** This type is required by the compiler and <b>should not be used in client code. * fullname */ case class NamedType(fullname: String) extends Type /** This type is required by the compiler and <b>should not be used in client code. * pre # sym */ case class PrefixedType(pre: Type, sym: Symbol) extends Type /** This type is required by the compiler and <b>should not be used in client code. * pre.type # sym == pre.sym */ case class SingleType(pre: Type, sym: Symbol) extends Type /** This type is required by the compiler and <b>should not be used in client code. * clazz.this */ case class ThisType(clazz: Symbol) extends Type /** This type is required by the compiler and <b>should not be used in client code. * clazz.super[superClazz] * <code>tpe[args1, ..., argsn] */ case class AppliedType(tpe: Type, args: List[Type]) extends Type /** This type is required by the compiler and <b>should not be used in client code. * [a <: lo >: hi] */ case class TypeBounds(lo: Type, hi: Type) extends Type /** This type is required by the compiler and <b>should not be used in client code. * <code>(formals1 ... formalsn) restpe */ case class MethodType(formals: List[Symbol], restpe: Type) extends Type /** This type is required by the compiler and <b>should not be used in client code. */ case class NullaryMethodType(resultType: Type) extends Type /** This type is required by the compiler and <b>should not be used in client code. */ case class PolyType(typeParams: List[Symbol], typeBounds: List[(Type, Type)], resultType: Type) extends Type /* Standard pattern match: case reflect.NoPrefix => case reflect.NoType => case reflect.NamedType(fullname) => case reflect.PrefixedType(pre, sym) => case reflect.SingleType(pre, sym) => case reflect.ThisType(clazz) => case reflect.AppliedType(tpe, args) => case reflect.TypeBounds(lo, hi) => case reflect.MethodType(formals, restpe) => case reflect.NullaryMethodType(restpe) => case reflect.PolyType(typeParams, typeBounds, resultType) => */ Other Scala examples (source code examples)Here is a short list of links related to this Scala Type.scala source code file: |
... this post is sponsored by my books ... | |
#1 New Release! |
FP Best Seller |
Copyright 1998-2021 Alvin Alexander, alvinalexander.com
All Rights Reserved.
A percentage of advertising revenue from
pages under the /java/jwarehouse
URI on this website is
paid back to open source projects.