@@ -855,22 +855,17 @@ class Definitions {
855855
856856 lazy val TupleType = mkArityArray(" scala.Tuple" , MaxTupleArity , 2 )
857857
858- def FunctionClass (n : Int , isImplicit : Boolean = false , isErased : Boolean = false )(implicit ctx : Context ) = {
859- if (isImplicit && isErased) {
860- require(n > 0 )
858+ def FunctionClass (n : Int , isImplicit : Boolean = false , isErased : Boolean = false )(implicit ctx : Context ) =
859+ if (isImplicit && isErased)
861860 ctx.requiredClass(" scala.ErasedImplicitFunction" + n.toString)
862- }
863- else if (isImplicit) {
864- require(n > 0 )
861+ else if (isImplicit)
865862 ctx.requiredClass(" scala.ImplicitFunction" + n.toString)
866- }
867- else if (isErased) {
868- require(n > 0 )
863+ else if (isErased)
869864 ctx.requiredClass(" scala.ErasedFunction" + n.toString)
870- }
871- else if (n <= MaxImplementedFunctionArity ) FunctionClassPerRun ()(ctx)(n)
872- else ctx.requiredClass( " scala.Function " + n.toString)
873- }
865+ else if (n <= MaxImplementedFunctionArity )
866+ FunctionClassPerRun ()(ctx)(n)
867+ else
868+ ctx.requiredClass( " scala.Function " + n.toString)
874869
875870 lazy val Function0_applyR = ImplementedFunctionType (0 ).symbol.requiredMethodRef(nme.apply)
876871 def Function0_apply (implicit ctx : Context ) = Function0_applyR .symbol
@@ -899,23 +894,26 @@ class Definitions {
899894 def isBottomType (tp : Type ) =
900895 tp.derivesFrom(NothingClass ) || tp.derivesFrom(NullClass )
901896
902- /** Is a function class.
903- * - FunctionN for N >= 0
904- * - ImplicitFunctionN for N > 0
905- * - ErasedFunctionN for N > 0
906- * - ErasedImplicitFunctionN for N > 0
897+ /** Is a function class, i.e. on of
898+ * - FunctionN
899+ * - ImplicitFunctionN
900+ * - ErasedFunctionN
901+ * - ErasedImplicitFunctionN
902+ * for N >= 0
907903 */
908904 def isFunctionClass (cls : Symbol ) = scalaClassName(cls).isFunction
909905
910906 /** Is an implicit function class.
911- * - ImplicitFunctionN for N > 0
912- * - ErasedImplicitFunctionN for N > 0
907+ * - ImplicitFunctionN
908+ * - ErasedImplicitFunctionN
909+ * for N >= 0
913910 */
914911 def isImplicitFunctionClass (cls : Symbol ) = scalaClassName(cls).isImplicitFunction
915912
916913 /** Is an erased function class.
917- * - ErasedFunctionN for N > 0
918- * - ErasedImplicitFunctionN for N > 0
914+ * - ErasedFunctionN
915+ * - ErasedImplicitFunctionN
916+ * for N >= 0
919917 */
920918 def isErasedFunctionClass (cls : Symbol ) = scalaClassName(cls).isErasedFunction
921919
@@ -942,7 +940,7 @@ class Definitions {
942940 * - FunctionN for N > 22 becomes FunctionXXL
943941 * - FunctionN for 22 > N >= 0 remains as FunctionN
944942 * - ImplicitFunctionN for N > 22 becomes FunctionXXL
945- * - ImplicitFunctionN for 22 > N >= 0 becomes FunctionN
943+ * - ImplicitFunctionN for N <= 22 becomes FunctionN
946944 * - ErasedFunctionN becomes Function0
947945 * - ImplicitErasedFunctionN becomes Function0
948946 * - anything else becomes a NoSymbol
@@ -959,7 +957,7 @@ class Definitions {
959957 * - FunctionN for N > 22 becomes FunctionXXL
960958 * - FunctionN for 22 > N >= 0 remains as FunctionN
961959 * - ImplicitFunctionN for N > 22 becomes FunctionXXL
962- * - ImplicitFunctionN for 22 > N >= 0 becomes FunctionN
960+ * - ImplicitFunctionN for N <= 22 becomes FunctionN
963961 * - ErasedFunctionN becomes Function0
964962 * - ImplicitErasedFunctionN becomes Function0
965963 * - anything else becomes a NoType
0 commit comments