diff options
author | michelou <michelou@epfl.ch> | 2005-11-29 12:05:40 +0000 |
---|---|---|
committer | michelou <michelou@epfl.ch> | 2005-11-29 12:05:40 +0000 |
commit | 630b3717fc18e606442dde271ec189a785957791 (patch) | |
tree | 2568f1261d5ce3028102eb3ced314976f3512fda /sources/scalac | |
parent | 9bcec1fcbd498aa28a9db73fb95e5a0bad95d60f (diff) | |
download | scala-630b3717fc18e606442dde271ec189a785957791.tar.gz scala-630b3717fc18e606442dde271ec189a785957791.tar.bz2 scala-630b3717fc18e606442dde271ec189a785957791.zip |
- added methods 'cloneTypes' and 'getTypeMap'
Diffstat (limited to 'sources/scalac')
-rw-r--r-- | sources/scalac/symtab/SymbolCloner.java | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/sources/scalac/symtab/SymbolCloner.java b/sources/scalac/symtab/SymbolCloner.java index a1a534fab6..d07717bdc7 100644 --- a/sources/scalac/symtab/SymbolCloner.java +++ b/sources/scalac/symtab/SymbolCloner.java @@ -1,6 +1,6 @@ /* ____ ____ ____ ____ ______ *\ ** / __// __ \/ __// __ \/ ____/ SOcos COmpiles Scala ** -** __\_ \/ /_/ / /__/ /_/ /\_ \ (c) 2002, LAMP/EPFL ** +** __\_ \/ /_/ / /__/ /_/ /\_ \ (c) 2002-2005, LAMP/EPFL ** ** /_____/\____/\___/\____/____/ ** \* */ @@ -8,8 +8,8 @@ package scalac.symtab; -import java.util.Map; import java.util.HashMap; +import java.util.Map; import scalac.util.Debug; @@ -128,6 +128,14 @@ public class SymbolCloner { return cloner.apply(type); } + /** Clones the given types. */ + public Type[] cloneTypes(Type[] types) { + Type[] clones = new Type[types.length]; + for (int i = 0; i < types.length; i++) + clones[i] = cloner.apply(types[i]); + return clones; + } + //######################################################################## // Public Methods - Mapping symbols @@ -145,6 +153,12 @@ public class SymbolCloner { return mapper.apply(type); } + /** Returns the type map built during symbol cloning. */ + // used in scalac/ast/TreeCloner.java + public Type.Map getTypeMap() { + return cloner; + } + //######################################################################## // Private Method |