mirror of
git://gcc.gnu.org/git/gcc.git
synced 2024-12-17 16:29:40 +08:00
classes.pl (scan): Print inner classes properly.
* scripts/classes.pl (scan): Print inner classes properly. * gcj/javaprims.h: Updated class list. From-SVN: r35151
This commit is contained in:
parent
5e5c1371d3
commit
7f8a07dbea
@ -1,5 +1,8 @@
|
||||
2000-07-20 Tom Tromey <tromey@cygnus.com>
|
||||
|
||||
* scripts/classes.pl (scan): Print inner classes properly.
|
||||
* gcj/javaprims.h: Updated class list.
|
||||
|
||||
* java/lang/natClassLoader.cc (_Jv_PrepareCompiledClass): Only
|
||||
initialize String fields for interpreted classes. Fixes bug
|
||||
reported by Hans Boehm.
|
||||
|
@ -39,6 +39,7 @@ extern "Java"
|
||||
{
|
||||
namespace io
|
||||
{
|
||||
class BlockDataException;
|
||||
class BufferedInputStream;
|
||||
class BufferedOutputStream;
|
||||
class BufferedReader;
|
||||
@ -53,6 +54,7 @@ extern "Java"
|
||||
class DataOutput;
|
||||
class DataOutputStream;
|
||||
class EOFException;
|
||||
class Externalizable;
|
||||
class File;
|
||||
class FileDescriptor;
|
||||
class FileInputStream;
|
||||
@ -68,11 +70,13 @@ extern "Java"
|
||||
class IOException;
|
||||
class InputStream;
|
||||
class InputStreamReader;
|
||||
class InterfaceComparator;
|
||||
class InterruptedIOException;
|
||||
class InvalidClassException;
|
||||
class InvalidObjectException;
|
||||
class LineNumberInputStream;
|
||||
class LineNumberReader;
|
||||
class MemberComparator;
|
||||
class NotActiveException;
|
||||
class NotSerializableException;
|
||||
class ObjectInput;
|
||||
@ -99,10 +103,11 @@ extern "Java"
|
||||
class PushbackReader;
|
||||
class RandomAccessFile;
|
||||
class Reader;
|
||||
class Replaceable;
|
||||
class Resolvable;
|
||||
class SequenceInputStream;
|
||||
class Serializable;
|
||||
class SerializablePermission;
|
||||
class SimpleDigestStream;
|
||||
class StreamCorruptedException;
|
||||
class StreamTokenizer;
|
||||
class StringBufferInputStream;
|
||||
@ -111,8 +116,10 @@ extern "Java"
|
||||
class SyncFailedException;
|
||||
class UTFDataFormatException;
|
||||
class UnsupportedEncodingException;
|
||||
class ValidatorAndPriority;
|
||||
class WriteAbortedException;
|
||||
class Writer;
|
||||
}
|
||||
};
|
||||
|
||||
namespace lang
|
||||
{
|
||||
@ -122,6 +129,7 @@ extern "Java"
|
||||
class ArrayStoreException;
|
||||
class Boolean;
|
||||
class Byte;
|
||||
class CPlusPlusDemangler;
|
||||
class Character;
|
||||
class Class;
|
||||
class ClassCastException;
|
||||
@ -198,13 +206,20 @@ extern "Java"
|
||||
class Member;
|
||||
class Method;
|
||||
class Modifier;
|
||||
}
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
namespace util
|
||||
{
|
||||
class AbstractCollection;
|
||||
class AbstractList;
|
||||
class AbstractList$SubList;
|
||||
class Arrays;
|
||||
class Arrays$ListImpl;
|
||||
class BitSet;
|
||||
class Calendar;
|
||||
class Collection;
|
||||
class Comparator;
|
||||
class ConcurrentModificationException;
|
||||
class Date;
|
||||
class Dictionary;
|
||||
@ -216,6 +231,9 @@ extern "Java"
|
||||
class Hashtable;
|
||||
class HashtableEntry;
|
||||
class HashtableEnumeration;
|
||||
class Iterator;
|
||||
class List;
|
||||
class ListIterator;
|
||||
class ListResourceBundle;
|
||||
class Locale;
|
||||
class MissingResourceException;
|
||||
@ -238,7 +256,7 @@ extern "Java"
|
||||
class JarEntry;
|
||||
class JarFile;
|
||||
class JarInputStream;
|
||||
}
|
||||
};
|
||||
|
||||
namespace zip
|
||||
{
|
||||
@ -261,9 +279,9 @@ extern "Java"
|
||||
class ZipFile;
|
||||
class ZipInputStream;
|
||||
class ZipOutputStream;
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
typedef struct java::lang::Object* jobject;
|
||||
|
@ -1,7 +1,7 @@
|
||||
# classes.pl - A perl program to generate most of the contents of
|
||||
# javaprims.h automatically.
|
||||
|
||||
# Copyright (C) 1998, 1999 Red Hat, Inc.
|
||||
# Copyright (C) 1998, 1999, 2000 Red Hat, Inc.
|
||||
#
|
||||
# This file is part of libjava.
|
||||
#
|
||||
@ -65,14 +65,29 @@ sub scan
|
||||
next unless $name =~ /\.java$/;
|
||||
|
||||
open (FILE, "< $dir/$name");
|
||||
local ($outer, $classname);
|
||||
while (<FILE>)
|
||||
{
|
||||
# NOTE: we don't skip `/*' comments.
|
||||
s,//.*$,,;
|
||||
# For now assume that class names start with upper
|
||||
# case letter.
|
||||
next unless /(class|interface) ([A-Z][A-Za-z0-9]+)/;
|
||||
$classes{$2} = 1;
|
||||
next unless /\b(class|interface) ([A-Z][A-Za-z0-9]+)/;
|
||||
$classname = $2;
|
||||
|
||||
# We assume the code is properly indented, so that we
|
||||
# can print inner classes properly.
|
||||
if (/^\s/)
|
||||
{
|
||||
die "no outer class for $classname in $dir/$name"
|
||||
unless $outer;
|
||||
$classes{$outer . "\$" . $classname} = 1;
|
||||
}
|
||||
else
|
||||
{
|
||||
$classes{$classname} = 1;
|
||||
$outer = $classname;
|
||||
}
|
||||
}
|
||||
close (FILE);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user