Commit 0cb757cc by Tom Tromey Committed by Tom Tromey

javaprims.h: Updated.

	* gcj/javaprims.h: Updated.
	* java/lang/String.java (String(StringBuilder)): New constructor.
	* java/lang/natStringBuilder.cc: New file.
	* java/lang/StringBuilder.java: New file.
	* Makefile.in: Rebuilt.
	* Makefile.am (core_java_source_files): Added StringBuilder.java.
	(nat_source_files): Added natStringBuilder.cc.

From-SVN: r99535
parent aeddae49
2005-05-10 Tom Tromey <tromey@redhat.com>
* gcj/javaprims.h: Updated.
* java/lang/String.java (String(StringBuilder)): New constructor.
* java/lang/natStringBuilder.cc: New file.
* java/lang/StringBuilder.java: New file.
* Makefile.in: Rebuilt.
* Makefile.am (core_java_source_files): Added StringBuilder.java.
(nat_source_files): Added natStringBuilder.cc.
2005-05-10 Paolo Bonzini <bonzini@gnu.org>
PR java/21436
......
......@@ -2931,6 +2931,7 @@ java/lang/StackTraceElement.java \
java/lang/StrictMath.java \
java/lang/String.java \
java/lang/StringBuffer.java \
java/lang/StringBuilder.java \
java/lang/StringIndexOutOfBoundsException.java \
java/lang/System.java \
java/lang/Thread.java \
......@@ -3926,6 +3927,7 @@ java/lang/natObject.cc \
java/lang/natRuntime.cc \
java/lang/natString.cc \
java/lang/natStringBuffer.cc \
java/lang/natStringBuilder.cc \
java/lang/natSystem.cc \
java/lang/natThread.cc \
java/lang/natVMClassLoader.cc \
......
......@@ -264,8 +264,8 @@ am__libgcj0_convenience_la_SOURCES_DIST = prims.cc jni.cc exception.cc \
java/lang/natFloat.cc java/lang/natMath.cc \
java/lang/natObject.cc java/lang/natRuntime.cc \
java/lang/natString.cc java/lang/natStringBuffer.cc \
java/lang/natSystem.cc java/lang/natThread.cc \
java/lang/natVMClassLoader.cc \
java/lang/natStringBuilder.cc java/lang/natSystem.cc \
java/lang/natThread.cc java/lang/natVMClassLoader.cc \
java/lang/natVMSecurityManager.cc java/lang/natVMThrowable.cc \
java/lang/ref/natReference.cc java/lang/reflect/natArray.cc \
java/lang/reflect/natConstructor.cc \
......@@ -337,6 +337,7 @@ am__libgcj0_convenience_la_SOURCES_DIST = prims.cc jni.cc exception.cc \
java/lang/StackOverflowError.java \
java/lang/StackTraceElement.java java/lang/StrictMath.java \
java/lang/String.java java/lang/StringBuffer.java \
java/lang/StringBuilder.java \
java/lang/StringIndexOutOfBoundsException.java \
java/lang/System.java java/lang/Thread.java \
java/lang/ThreadDeath.java java/lang/ThreadGroup.java \
......@@ -2312,8 +2313,8 @@ am__objects_5 = gnu/classpath/natSystemProperties.lo \
java/lang/natFloat.lo java/lang/natMath.lo \
java/lang/natObject.lo java/lang/natRuntime.lo \
java/lang/natString.lo java/lang/natStringBuffer.lo \
java/lang/natSystem.lo java/lang/natThread.lo \
java/lang/natVMClassLoader.lo \
java/lang/natStringBuilder.lo java/lang/natSystem.lo \
java/lang/natThread.lo java/lang/natVMClassLoader.lo \
java/lang/natVMSecurityManager.lo java/lang/natVMThrowable.lo \
java/lang/ref/natReference.lo java/lang/reflect/natArray.lo \
java/lang/reflect/natConstructor.lo \
......@@ -2381,7 +2382,7 @@ am__objects_8 = java/lang/AbstractMethodError.lo \
java/lang/SecurityManager.lo java/lang/Short.lo \
java/lang/StackOverflowError.lo java/lang/StackTraceElement.lo \
java/lang/StrictMath.lo java/lang/String.lo \
java/lang/StringBuffer.lo \
java/lang/StringBuffer.lo java/lang/StringBuilder.lo \
java/lang/StringIndexOutOfBoundsException.lo \
java/lang/System.lo java/lang/Thread.lo \
java/lang/ThreadDeath.lo java/lang/ThreadGroup.lo \
......@@ -6735,6 +6736,7 @@ java/lang/StackTraceElement.java \
java/lang/StrictMath.java \
java/lang/String.java \
java/lang/StringBuffer.java \
java/lang/StringBuilder.java \
java/lang/StringIndexOutOfBoundsException.java \
java/lang/System.java \
java/lang/Thread.java \
......@@ -7719,6 +7721,7 @@ java/lang/natObject.cc \
java/lang/natRuntime.cc \
java/lang/natString.cc \
java/lang/natStringBuffer.cc \
java/lang/natStringBuilder.cc \
java/lang/natSystem.cc \
java/lang/natThread.cc \
java/lang/natVMClassLoader.cc \
......@@ -8369,6 +8372,8 @@ java/lang/natString.lo: java/lang/$(am__dirstamp) \
java/lang/$(DEPDIR)/$(am__dirstamp)
java/lang/natStringBuffer.lo: java/lang/$(am__dirstamp) \
java/lang/$(DEPDIR)/$(am__dirstamp)
java/lang/natStringBuilder.lo: java/lang/$(am__dirstamp) \
java/lang/$(DEPDIR)/$(am__dirstamp)
java/lang/natSystem.lo: java/lang/$(am__dirstamp) \
java/lang/$(DEPDIR)/$(am__dirstamp)
java/lang/natThread.lo: java/lang/$(am__dirstamp) \
......@@ -8676,6 +8681,8 @@ java/lang/String.lo: java/lang/$(am__dirstamp) \
java/lang/$(DEPDIR)/$(am__dirstamp)
java/lang/StringBuffer.lo: java/lang/$(am__dirstamp) \
java/lang/$(DEPDIR)/$(am__dirstamp)
java/lang/StringBuilder.lo: java/lang/$(am__dirstamp) \
java/lang/$(DEPDIR)/$(am__dirstamp)
java/lang/StringIndexOutOfBoundsException.lo: \
java/lang/$(am__dirstamp) java/lang/$(DEPDIR)/$(am__dirstamp)
java/lang/System.lo: java/lang/$(am__dirstamp) \
......@@ -17174,6 +17181,8 @@ mostlyclean-compile:
-rm -f java/lang/String.lo
-rm -f java/lang/StringBuffer.$(OBJEXT)
-rm -f java/lang/StringBuffer.lo
-rm -f java/lang/StringBuilder.$(OBJEXT)
-rm -f java/lang/StringBuilder.lo
-rm -f java/lang/StringIndexOutOfBoundsException.$(OBJEXT)
-rm -f java/lang/StringIndexOutOfBoundsException.lo
-rm -f java/lang/System.$(OBJEXT)
......@@ -17266,6 +17275,8 @@ mostlyclean-compile:
-rm -f java/lang/natString.lo
-rm -f java/lang/natStringBuffer.$(OBJEXT)
-rm -f java/lang/natStringBuffer.lo
-rm -f java/lang/natStringBuilder.$(OBJEXT)
-rm -f java/lang/natStringBuilder.lo
-rm -f java/lang/natSystem.$(OBJEXT)
-rm -f java/lang/natSystem.lo
-rm -f java/lang/natThread.$(OBJEXT)
......@@ -21174,6 +21185,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/StrictMath.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/String.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/StringBuffer.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/StringBuilder.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/StringIndexOutOfBoundsException.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/System.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/Thread.Plo@am__quote@
......@@ -21220,6 +21232,7 @@ distclean-compile:
@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/natRuntime.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/natString.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/natStringBuffer.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/natStringBuilder.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/natSystem.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/natThread.Plo@am__quote@
@AMDEP_TRUE@@am__include@ @am__quote@java/lang/$(DEPDIR)/natVMClassLoader.Plo@am__quote@
// javaprims.h - Main external header file for libgcj. -*- c++ -*-
/* Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004
/* Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
Free Software Foundation
This file is part of libgcj.
......@@ -78,24 +78,24 @@ extern "Java"
class IOException;
class InputStream;
class InputStreamReader;
class InterfaceComparator;
class InterruptedIOException;
class InvalidClassException;
class InvalidObjectException;
class LineNumberInputStream;
class LineNumberReader;
class MemberComparator;
class MyIOException;
class NotActiveException;
class NotSerializableException;
class ObjectInput;
class ObjectInputStream;
class ObjectInputStream$GetField;
class ObjectInputStream$ValidatorAndPriority;
class ObjectInputValidation;
class ObjectOutput;
class ObjectOutputStream;
class ObjectOutputStream$PutField;
class ObjectStreamClass;
class ObjectStreamClass$InterfaceComparator;
class ObjectStreamClass$MemberComparator;
class ObjectStreamConstants;
class ObjectStreamException;
class ObjectStreamField;
......@@ -124,7 +124,6 @@ extern "Java"
class UTFDataFormatException;
class UnsupportedEncodingException;
class VMObjectStreamClass;
class ValidatorAndPriority;
class WriteAbortedException;
class Writer;
}
......@@ -204,6 +203,7 @@ extern "Java"
class String;
class String$CaseInsensitiveComparator;
class StringBuffer;
class StringBuilder;
class StringIndexOutOfBoundsException;
class System;
class Thread;
......@@ -211,6 +211,7 @@ extern "Java"
class ThreadGroup;
class ThreadLocal;
class Throwable;
class Throwable$StaticData;
class UnknownError;
class UnsatisfiedLinkError;
class UnsupportedClassVersionError;
......@@ -256,6 +257,8 @@ extern "Java"
{
class AbstractCollection;
class AbstractList;
class AbstractList$RandomAccessSubList;
class AbstractList$SubList;
class AbstractMap;
class AbstractMap$BasicMapEntry;
class AbstractSequentialList;
......@@ -342,7 +345,6 @@ extern "Java"
class PropertyResourceBundle;
class Random;
class RandomAccess;
class RandomAccessSubList;
class ResourceBundle;
class ResourceBundle$BundleKey;
class Set;
......@@ -351,7 +353,6 @@ extern "Java"
class SortedSet;
class Stack;
class StringTokenizer;
class SubList;
class TimeZone;
class Timer;
class Timer$Scheduler;
......@@ -376,6 +377,7 @@ extern "Java"
class JarEntry;
class JarException;
class JarFile;
class JarFile$EntryInputStream;
class JarFile$JarEnumeration;
class JarInputStream;
class JarOutputStream;
......
/* String.java -- immutable character sequences; the object of string literals
Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004
Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
Free Software Foundation, Inc.
This file is part of GNU Classpath.
......@@ -398,6 +398,18 @@ public final class String implements Serializable, Comparable, CharSequence
}
/**
* Creates a new String using the character sequence represented by
* the StringBuilder. Subsequent changes to buf do not affect the String.
*
* @param buffer StringBuilder to copy
* @throws NullPointerException if buffer is null
*/
public String(StringBuilder buffer)
{
this(buffer.value, 0, buffer.count);
}
/**
* Special constructor which can share an array when safe to do so.
*
* @param data the characters to copy
......
// Native methods for StringBuilder.
/* Copyright (C) 2005 Free Software Foundation
This file is part of libgcj.
This software is copyrighted work licensed under the terms of the
Libgcj License. Please consult the file "LIBGCJ_LICENSE" for
details. */
#include <config.h>
#include <gcj/cni.h>
#include <java/lang/StringBuilder.h>
#include <java/lang/String.h>
jboolean
java::lang::StringBuilder::regionMatches(jint offset, jstring other)
{
int len = other->count;
int index = 0;
jchar *sc = elements (value);
jchar *oc = _Jv_GetStringChars (other);
while (--len >= 0)
{
if (sc[offset++] != oc[index++])
return false;
}
return true;
}
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