aboutsummaryrefslogtreecommitdiff
path: root/libjava
diff options
context:
space:
mode:
authorMichael Koch <konqueror@gmx.de>2002-09-18 10:15:52 +0000
committerMichael Koch <mkoch@gcc.gnu.org>2002-09-18 10:15:52 +0000
commita2f2457fa482356b5996a084d037d79fdc1a556f (patch)
tree1d8bfb2afa774223edd8b5583a5dd9e57a957dec /libjava
parent00a892b812d0a634402bb31a5836147be11bf6a4 (diff)
downloadgcc-a2f2457fa482356b5996a084d037d79fdc1a556f.zip
gcc-a2f2457fa482356b5996a084d037d79fdc1a556f.tar.gz
gcc-a2f2457fa482356b5996a084d037d79fdc1a556f.tar.bz2
Matcher.java, [...]: Merge with classpath, new files.
2002-09-18 Michael Koch <konqueror@gmx.de> * java/util/regex/Matcher.java, java/util/regex/Pattern.java, java/util/regex/PatternSyntaxException.java: Merge with classpath, new files. * Makefile.am (core_java_source_files): Added java/util/regex/Matcher.java, java/util/regex/Pattern.java, java/util/regex/PatternSyntaxException.java * Makefile.in: Regenerated. * include/config.h.in: Added HAVE_NET_IF_H. * java/net/natNetworkInterface.cc (getRealNetworkInterfaces): Removed #if 0 ... #endif. From-SVN: r57275
Diffstat (limited to 'libjava')
-rw-r--r--libjava/ChangeLog14
-rw-r--r--libjava/Makefile.am5
-rw-r--r--libjava/Makefile.in12
-rw-r--r--libjava/include/config.h.in3
-rw-r--r--libjava/java/net/natNetworkInterface.cc4
-rw-r--r--libjava/java/util/regex/Matcher.java51
-rw-r--r--libjava/java/util/regex/Pattern.java59
-rw-r--r--libjava/java/util/regex/PatternSyntaxException.java131
8 files changed, 272 insertions, 7 deletions
diff --git a/libjava/ChangeLog b/libjava/ChangeLog
index 8c21e1a..89cba05 100644
--- a/libjava/ChangeLog
+++ b/libjava/ChangeLog
@@ -1,3 +1,17 @@
+2002-09-18 Michael Koch <konqueror@gmx.de>
+
+ * java/util/regex/Matcher.java, java/util/regex/Pattern.java,
+ java/util/regex/PatternSyntaxException.java:
+ Merge with classpath, new files.
+ * Makefile.am (core_java_source_files):
+ Added java/util/regex/Matcher.java,
+ java/util/regex/Pattern.java,
+ java/util/regex/PatternSyntaxException.java
+ * Makefile.in: Regenerated.
+ * include/config.h.in: Added HAVE_NET_IF_H.
+ * java/net/natNetworkInterface.cc (getRealNetworkInterfaces):
+ Removed #if 0 ... #endif.
+
2002-09-17 Michael Koch <konqueror@gmx.de>
* java/net/natNetworkInterface.cc:
diff --git a/libjava/Makefile.am b/libjava/Makefile.am
index fb32fa9..456662c 100644
--- a/libjava/Makefile.am
+++ b/libjava/Makefile.am
@@ -1661,7 +1661,10 @@ java/util/TreeMap.java \
java/util/TreeSet.java \
java/util/TooManyListenersException.java \
java/util/Vector.java \
-java/util/WeakHashMap.java
+java/util/WeakHashMap.java \
+java/util/regex/Matcher.java \
+java/util/regex/Pattern.java \
+java/util/regex/PatternSyntaxException.java
## List of all .java files to be compiled. Please keep this list
## alphabetical. Please put files from java/lang, java/io, and java/util
diff --git a/libjava/Makefile.in b/libjava/Makefile.in
index 1cc7ef5..272a446 100644
--- a/libjava/Makefile.in
+++ b/libjava/Makefile.in
@@ -1428,7 +1428,10 @@ java/util/TreeMap.java \
java/util/TreeSet.java \
java/util/TooManyListenersException.java \
java/util/Vector.java \
-java/util/WeakHashMap.java
+java/util/WeakHashMap.java \
+java/util/regex/Matcher.java \
+java/util/regex/Pattern.java \
+java/util/regex/PatternSyntaxException.java
ordinary_java_source_files = $(core_java_source_files) \
@@ -3113,8 +3116,11 @@ DEP_FILES = .deps/$(srcdir)/$(CONVERT_DIR)/gen-from-JIS.P \
.deps/java/util/jar/JarException.P .deps/java/util/jar/JarFile.P \
.deps/java/util/jar/JarInputStream.P \
.deps/java/util/jar/JarOutputStream.P .deps/java/util/jar/Manifest.P \
-.deps/java/util/natTimeZone.P .deps/java/util/zip/Adler32.P \
-.deps/java/util/zip/CRC32.P .deps/java/util/zip/CheckedInputStream.P \
+.deps/java/util/natTimeZone.P .deps/java/util/regex/Matcher.P \
+.deps/java/util/regex/Pattern.P \
+.deps/java/util/regex/PatternSyntaxException.P \
+.deps/java/util/zip/Adler32.P .deps/java/util/zip/CRC32.P \
+.deps/java/util/zip/CheckedInputStream.P \
.deps/java/util/zip/CheckedOutputStream.P \
.deps/java/util/zip/Checksum.P \
.deps/java/util/zip/DataFormatException.P \
diff --git a/libjava/include/config.h.in b/libjava/include/config.h.in
index f75f74f..612a2bf 100644
--- a/libjava/include/config.h.in
+++ b/libjava/include/config.h.in
@@ -346,6 +346,9 @@
/* Define if you have the <netdb.h> header file. */
#undef HAVE_NETDB_H
+/* Define if you have the <net/if.h> header file. */
+#undef HAVE_NET_IF_H
+
/* Define if you have the <netinet/in.h> header file. */
#undef HAVE_NETINET_IN_H
diff --git a/libjava/java/net/natNetworkInterface.cc b/libjava/java/net/natNetworkInterface.cc
index 75e904d..1d236b0 100644
--- a/libjava/java/net/natNetworkInterface.cc
+++ b/libjava/java/net/natNetworkInterface.cc
@@ -70,7 +70,6 @@ java::net::NetworkInterface::getRealNetworkInterfaces ()
::java::util::Vector*
java::net::NetworkInterface::getRealNetworkInterfaces ()
{
-#if 0
int fd;
int num_interfaces = 0;
struct ifconf if_data;
@@ -128,7 +127,7 @@ java::net::NetworkInterface::getRealNetworkInterfaces ()
}
#ifdef HAVE_INET6
- // FIXME: read /proc/net/if_inet6
+ // FIXME: read /proc/net/if_inet6 (on Linux 2.4)
#endif
_Jv_Free (if_data.ifc_buf);
@@ -137,7 +136,6 @@ java::net::NetworkInterface::getRealNetworkInterfaces ()
::close (fd);
return ht;
-#endif
}
#endif // DISABLE_JAVA_NET //
diff --git a/libjava/java/util/regex/Matcher.java b/libjava/java/util/regex/Matcher.java
new file mode 100644
index 0000000..a1f95db
--- /dev/null
+++ b/libjava/java/util/regex/Matcher.java
@@ -0,0 +1,51 @@
+/* Matcher.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+// Stub class until java.util.regex is implemented.
+package java.util.regex;
+
+public class Matcher
+{
+ public String replaceFirst(String replacement)
+ {
+ throw new InternalError("Not implemented yet");
+ }
+ public String replaceAll(String replacement)
+ {
+ throw new InternalError("Not implemented yet");
+ }
+}
diff --git a/libjava/java/util/regex/Pattern.java b/libjava/java/util/regex/Pattern.java
new file mode 100644
index 0000000..0ea1bfb
--- /dev/null
+++ b/libjava/java/util/regex/Pattern.java
@@ -0,0 +1,59 @@
+/* Pattern.java --
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+// Stub class until java.util.regex is implemented.
+package java.util.regex;
+
+public class Pattern
+{
+ public static Pattern compile(String regex)
+ {
+ throw new InternalError("Not implemented yet");
+ }
+ public static boolean matches(String regex, CharSequence input)
+ {
+ throw new InternalError("Not implemented yet");
+ }
+ public Matcher matcher(CharSequence input)
+ {
+ throw new InternalError("Not implemented yet");
+ }
+ public String[] split(CharSequence input, int limit)
+ {
+ throw new InternalError("Not implemented yet");
+ }
+}
diff --git a/libjava/java/util/regex/PatternSyntaxException.java b/libjava/java/util/regex/PatternSyntaxException.java
new file mode 100644
index 0000000..fc40d34
--- /dev/null
+++ b/libjava/java/util/regex/PatternSyntaxException.java
@@ -0,0 +1,131 @@
+/* PatternSyntaxException - Indicates illegal pattern for regular expression.
+ Copyright (C) 2002 Free Software Foundation, Inc.
+
+This file is part of GNU Classpath.
+
+GNU Classpath is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GNU Classpath is distributed in the hope that it will be useful, but
+WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GNU Classpath; see the file COPYING. If not, write to the
+Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
+02111-1307 USA.
+
+Linking this library statically or dynamically with other modules is
+making a combined work based on this library. Thus, the terms and
+conditions of the GNU General Public License cover the whole
+combination.
+
+As a special exception, the copyright holders of this library give you
+permission to link this library with independent modules to produce an
+executable, regardless of the license terms of these independent
+modules, and to copy and distribute the resulting executable under
+terms of your choice, provided that you also meet, for each linked
+independent module, the terms and conditions of the license of that
+module. An independent module is a module which is not derived from
+or based on this library. If you modify this library, you may extend
+this exception to your version of the library, but you are not
+obligated to do so. If you do not wish to do so, delete this
+exception statement from your version. */
+
+package java.util.regex;
+
+/**
+ * Indicates illegal pattern for regular expression.
+ * Includes state to inspect the pattern and what and where the expression
+ * was not valid regular expression.
+ */
+public class PatternSyntaxException extends IllegalArgumentException
+{
+
+ /**
+ * Human readable escription of the syntax error.
+ */
+ private final String desc;
+
+ /**
+ * The original pattern that contained the syntax error.
+ */
+ private final String pattern;
+
+ /**
+ * Index of the first character in the String that was probably invalid,
+ * or -1 when unknown.
+ */
+ private final int index;
+
+ /**
+ * Creates a new PatternSyntaxException.
+ *
+ * @param description Human readable escription of the syntax error.
+ * @param pattern The original pattern that contained the syntax error.
+ * @param index Index of the first character in the String that was
+ * probably invalid, or -1 when unknown.
+ */
+ public PatternSyntaxException(String description,
+ String pattern,
+ int index)
+ {
+ super(description);
+ this.desc = description;
+ this.pattern = pattern;
+ this.index = index;
+ }
+
+ /**
+ * Returns a human readable escription of the syntax error.
+ */
+ public String getDescription()
+ {
+ return desc;
+ }
+
+ /**
+ * Returns the original pattern that contained the syntax error.
+ */
+ public String getPattern()
+ {
+ return pattern;
+ }
+
+ /**
+ * Returns the index of the first character in the String that was probably
+ * invalid, or -1 when unknown.
+ */
+ public int getIndex()
+ {
+ return index;
+ }
+
+ /**
+ * Returns a string containing a line with the description, a line with
+ * the original pattern and a line indicating with a ^ which character is
+ * probably the first invalid character in the pattern if the index is not
+ * negative.
+ */
+ public String getMessage()
+ {
+ String lineSep = System.getProperty("line.separator");
+ StringBuffer sb = new StringBuffer(desc);
+ sb.append(lineSep);
+ sb.append('\t');
+ sb.append(pattern);
+ if (index != -1)
+ {
+ sb.append(lineSep);
+ sb.append('\t');
+ for (int i=0; i<index; i++)
+ sb.append(' ');
+ sb.append('^');
+ }
+ return sb.toString();
+ }
+
+}