summaryrefslogtreecommitdiff
path: root/sources/scala/tools/nsc/symtab/Definitions.scala
diff options
context:
space:
mode:
authorMartin Odersky <odersky@gmail.com>2005-09-23 12:28:07 +0000
committerMartin Odersky <odersky@gmail.com>2005-09-23 12:28:07 +0000
commitfcc3a4867d2df32377b56c908c46617a92745ce8 (patch)
tree534c4deb305f19ca3c3a76b3472b87c7dadb868d /sources/scala/tools/nsc/symtab/Definitions.scala
parent14c330159a76b428b4ca5aa25c112d61836bd79a (diff)
downloadscala-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-xsources/scala/tools/nsc/symtab/Definitions.scala11
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(