summaryrefslogtreecommitdiff
path: root/sources
diff options
context:
space:
mode:
authormihaylov <mihaylov@epfl.ch>2004-03-22 18:04:01 +0000
committermihaylov <mihaylov@epfl.ch>2004-03-22 18:04:01 +0000
commit6aa8f52864bf555f6952a4fb8b0c28c60eaaea00 (patch)
tree59c23d544c1257b36ddf636f913fdba4a795d6ac /sources
parent7ad11edbe9a9e722bced0adf7dcd34ef256e4a11 (diff)
downloadscala-6aa8f52864bf555f6952a4fb8b0c28c60eaaea00.tar.gz
scala-6aa8f52864bf555f6952a4fb8b0c28c60eaaea00.tar.bz2
scala-6aa8f52864bf555f6952a4fb8b0c28c60eaaea00.zip
- Implemented the actual metadata import in doC...
- Implemented the actual metadata import in doComplete() Removed some - unused diagnostic printout statements
Diffstat (limited to 'sources')
-rw-r--r--sources/scalac/symtab/classfile/CLRPackageParser.java13
1 files changed, 7 insertions, 6 deletions
diff --git a/sources/scalac/symtab/classfile/CLRPackageParser.java b/sources/scalac/symtab/classfile/CLRPackageParser.java
index 2378a7378e..decce98a26 100644
--- a/sources/scalac/symtab/classfile/CLRPackageParser.java
+++ b/sources/scalac/symtab/classfile/CLRPackageParser.java
@@ -130,7 +130,6 @@ public class CLRPackageParser extends SymbolLoader {
public void map(Symbol sym, MemberInfo m) {
syms2members.put(sym, m);
members2syms.put(m, sym);
- //System.out.println("" + sym + " => " + m);
}
public MemberInfo getMember(Symbol sym) {
@@ -154,8 +153,10 @@ public class CLRPackageParser extends SymbolLoader {
//##########################################################################
// assembly loading methods
+ // a list of all loaded assemblies
protected final java.util.List assemblies = new LinkedList();
+ // a set of all directories and assembly files
protected final java.util.Set/*<File>*/ assemrefs = new LinkedHashSet();
/** Load the assembly with the given name
@@ -204,14 +205,12 @@ public class CLRPackageParser extends SymbolLoader {
/** Load the rest of the assemblies specified with the '-r' option
*/
private void findAllAssemblies() {
- //System.out.println("assembly references left: " + assemrefs);
for (Iterator assems = assemrefs.iterator(); assems.hasNext();) {
File f = (File)assems.next();
if (f.isFile()) {
Assembly assem = Assembly.LoadFrom(f.getPath());
if (assem != null) {
assemblies.add(assem);
- //System.out.println("Loaded assembly " + assem);
}
}
assems.remove();
@@ -223,7 +222,11 @@ public class CLRPackageParser extends SymbolLoader {
// main functionality
protected String doComplete(Symbol p) {
- return "!!! CLRPackageParser";
+ Scope members = new Scope();
+ importCLRTypes(p, members);
+ p.setInfo(scalac.symtab.Type.compoundType
+ (scalac.symtab.Type.EMPTY_ARRAY, members, p));
+ return "namespace " + Debug.show(p);
}
/**
@@ -249,7 +252,6 @@ public class CLRPackageParser extends SymbolLoader {
String fullname = types[i].FullName;
if (!fullname.startsWith(n1))
continue;
- //System.out.println("importing type: " + fullname);
int j = n1.length();
int k = fullname.indexOf('.', j);
String name = fullname.substring(j, k < 0 ? fullname.length() : k);
@@ -271,7 +273,6 @@ public class CLRPackageParser extends SymbolLoader {
{
Name n = Name.fromString(namespace);
if (members.lookup(n) == Symbol.NONE) {
- //System.out.println("importing namespace " + namespace);
p.newLoadedPackage(n, this, members);
}
}