diff options
author | Martin Odersky <odersky@gmail.com> | 2005-09-23 12:28:07 +0000 |
---|---|---|
committer | Martin Odersky <odersky@gmail.com> | 2005-09-23 12:28:07 +0000 |
commit | fcc3a4867d2df32377b56c908c46617a92745ce8 (patch) | |
tree | 534c4deb305f19ca3c3a76b3472b87c7dadb868d /sources/scala/tools/nsc/symtab/Definitions.scala | |
parent | 14c330159a76b428b4ca5aa25c112d61836bd79a (diff) | |
download | scala-fcc3a4867d2df32377b56c908c46617a92745ce8.tar.gz scala-fcc3a4867d2df32377b56c908c46617a92745ce8.tar.bz2 scala-fcc3a4867d2df32377b56c908c46617a92745ce8.zip |
*** empty log message ***
Diffstat (limited to 'sources/scala/tools/nsc/symtab/Definitions.scala')
-rwxr-xr-x | sources/scala/tools/nsc/symtab/Definitions.scala | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/sources/scala/tools/nsc/symtab/Definitions.scala b/sources/scala/tools/nsc/symtab/Definitions.scala index 275948bdc0..4bb6f60e7d 100755 --- a/sources/scala/tools/nsc/symtab/Definitions.scala +++ b/sources/scala/tools/nsc/symtab/Definitions.scala @@ -10,6 +10,7 @@ import collection.mutable.HashMap; import Flags._; abstract class Definitions: SymbolTable { + object definitions { // root packages and classes @@ -80,9 +81,9 @@ abstract class Definitions: SymbolTable { val MaxTupleArity = 9; val MaxFunctionArity = 9; - def TupleClass(i: int): Symbol = getClass("scala.Tuple" + i); + var TupleClass: Array[Symbol] = _; def tupleField(n:int, j:int) = getMember(TupleClass(n), "_" + j); - def FunctionClass(i: int): Symbol = getClass("scala.Function" + i); + var FunctionClass: Array[Symbol] = _; def functionApply(n:int) = getMember(FunctionClass(n), "apply"); def tupleType(elems: List[Type]) = @@ -327,6 +328,12 @@ abstract class Definitions: SymbolTable { tparam => typeRef(SeqClass.typeConstructor.prefix, SeqClass, List(tparam.typeConstructor))); ByNameParamClass = newCovariantPolyClass( ScalaPackageClass, nme.BYNAME_PARAM_CLASS_NAME, tparam => AnyClass.typeConstructor); + TupleClass = new Array(MaxTupleArity + 1); + for (val i <- List.range(1, MaxTupleArity + 1)) + TupleClass(i) = getClass("scala.Tuple" + i); + FunctionClass = new Array(MaxFunctionArity + 1); + for (val i <- List.range(0, MaxFunctionArity + 1)) + FunctionClass(i) = getClass("scala.Function" + i); // members of class scala.Any Any_== = newMethod( |