Commit 7f8a07db by Tom Tromey Committed by Tom Tromey

classes.pl (scan): Print inner classes properly.

	* scripts/classes.pl (scan): Print inner classes properly.
	* gcj/javaprims.h: Updated class list.

From-SVN: r35151
parent 5e5c1371
2000-07-20 Tom Tromey <tromey@cygnus.com> 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 * java/lang/natClassLoader.cc (_Jv_PrepareCompiledClass): Only
initialize String fields for interpreted classes. Fixes bug initialize String fields for interpreted classes. Fixes bug
reported by Hans Boehm. reported by Hans Boehm.
......
...@@ -39,6 +39,7 @@ extern "Java" ...@@ -39,6 +39,7 @@ extern "Java"
{ {
namespace io namespace io
{ {
class BlockDataException;
class BufferedInputStream; class BufferedInputStream;
class BufferedOutputStream; class BufferedOutputStream;
class BufferedReader; class BufferedReader;
...@@ -53,6 +54,7 @@ extern "Java" ...@@ -53,6 +54,7 @@ extern "Java"
class DataOutput; class DataOutput;
class DataOutputStream; class DataOutputStream;
class EOFException; class EOFException;
class Externalizable;
class File; class File;
class FileDescriptor; class FileDescriptor;
class FileInputStream; class FileInputStream;
...@@ -68,11 +70,13 @@ extern "Java" ...@@ -68,11 +70,13 @@ extern "Java"
class IOException; class IOException;
class InputStream; class InputStream;
class InputStreamReader; class InputStreamReader;
class InterfaceComparator;
class InterruptedIOException; class InterruptedIOException;
class InvalidClassException; class InvalidClassException;
class InvalidObjectException; class InvalidObjectException;
class LineNumberInputStream; class LineNumberInputStream;
class LineNumberReader; class LineNumberReader;
class MemberComparator;
class NotActiveException; class NotActiveException;
class NotSerializableException; class NotSerializableException;
class ObjectInput; class ObjectInput;
...@@ -99,10 +103,11 @@ extern "Java" ...@@ -99,10 +103,11 @@ extern "Java"
class PushbackReader; class PushbackReader;
class RandomAccessFile; class RandomAccessFile;
class Reader; class Reader;
class Replaceable;
class Resolvable;
class SequenceInputStream; class SequenceInputStream;
class Serializable; class Serializable;
class SerializablePermission; class SerializablePermission;
class SimpleDigestStream;
class StreamCorruptedException; class StreamCorruptedException;
class StreamTokenizer; class StreamTokenizer;
class StringBufferInputStream; class StringBufferInputStream;
...@@ -111,8 +116,10 @@ extern "Java" ...@@ -111,8 +116,10 @@ extern "Java"
class SyncFailedException; class SyncFailedException;
class UTFDataFormatException; class UTFDataFormatException;
class UnsupportedEncodingException; class UnsupportedEncodingException;
class ValidatorAndPriority;
class WriteAbortedException;
class Writer; class Writer;
} };
namespace lang namespace lang
{ {
...@@ -122,6 +129,7 @@ extern "Java" ...@@ -122,6 +129,7 @@ extern "Java"
class ArrayStoreException; class ArrayStoreException;
class Boolean; class Boolean;
class Byte; class Byte;
class CPlusPlusDemangler;
class Character; class Character;
class Class; class Class;
class ClassCastException; class ClassCastException;
...@@ -198,13 +206,20 @@ extern "Java" ...@@ -198,13 +206,20 @@ extern "Java"
class Member; class Member;
class Method; class Method;
class Modifier; class Modifier;
} };
} };
namespace util namespace util
{ {
class AbstractCollection;
class AbstractList;
class AbstractList$SubList;
class Arrays;
class Arrays$ListImpl;
class BitSet; class BitSet;
class Calendar; class Calendar;
class Collection;
class Comparator;
class ConcurrentModificationException; class ConcurrentModificationException;
class Date; class Date;
class Dictionary; class Dictionary;
...@@ -216,6 +231,9 @@ extern "Java" ...@@ -216,6 +231,9 @@ extern "Java"
class Hashtable; class Hashtable;
class HashtableEntry; class HashtableEntry;
class HashtableEnumeration; class HashtableEnumeration;
class Iterator;
class List;
class ListIterator;
class ListResourceBundle; class ListResourceBundle;
class Locale; class Locale;
class MissingResourceException; class MissingResourceException;
...@@ -238,7 +256,7 @@ extern "Java" ...@@ -238,7 +256,7 @@ extern "Java"
class JarEntry; class JarEntry;
class JarFile; class JarFile;
class JarInputStream; class JarInputStream;
} };
namespace zip namespace zip
{ {
...@@ -261,9 +279,9 @@ extern "Java" ...@@ -261,9 +279,9 @@ extern "Java"
class ZipFile; class ZipFile;
class ZipInputStream; class ZipInputStream;
class ZipOutputStream; class ZipOutputStream;
} };
} };
} };
}; };
typedef struct java::lang::Object* jobject; typedef struct java::lang::Object* jobject;
......
# classes.pl - A perl program to generate most of the contents of # classes.pl - A perl program to generate most of the contents of
# javaprims.h automatically. # javaprims.h automatically.
# Copyright (C) 1998, 1999 Red Hat, Inc. # Copyright (C) 1998, 1999, 2000 Red Hat, Inc.
# #
# This file is part of libjava. # This file is part of libjava.
# #
...@@ -65,14 +65,29 @@ sub scan ...@@ -65,14 +65,29 @@ sub scan
next unless $name =~ /\.java$/; next unless $name =~ /\.java$/;
open (FILE, "< $dir/$name"); open (FILE, "< $dir/$name");
local ($outer, $classname);
while (<FILE>) while (<FILE>)
{ {
# NOTE: we don't skip `/*' comments. # NOTE: we don't skip `/*' comments.
s,//.*$,,; s,//.*$,,;
# For now assume that class names start with upper # For now assume that class names start with upper
# case letter. # case letter.
next unless /(class|interface) ([A-Z][A-Za-z0-9]+)/; next unless /\b(class|interface) ([A-Z][A-Za-z0-9]+)/;
$classes{$2} = 1; $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); close (FILE);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment