Imported GNU Classpath 0.90
Imported GNU Classpath 0.90
* scripts/makemake.tcl: LocaleData.java moved to gnu/java/locale.
* sources.am: Regenerated.
* gcj/javaprims.h: Regenerated.
* Makefile.in: Regenerated.
* gcj/Makefile.in: Regenerated.
* include/Makefile.in: Regenerated.
* testsuite/Makefile.in: Regenerated.
* gnu/java/lang/VMInstrumentationImpl.java: New override.
* gnu/java/net/local/LocalSocketImpl.java: Likewise.
* gnu/classpath/jdwp/VMMethod.java: Likewise.
* gnu/classpath/jdwp/VMVirtualMachine.java: Update to latest
interface.
* java/lang/Thread.java: Add UncaughtExceptionHandler.
* java/lang/reflect/Method.java: Implements GenericDeclaration and
isSynthetic(),
* java/lang/reflect/Field.java: Likewise.
* java/lang/reflect/Constructor.java
* java/lang/Class.java: Implements Type, GenericDeclaration,
getSimpleName() and getEnclosing*() methods.
* java/lang/Class.h: Add new public methods.
* java/lang/Math.java: Add signum(), ulp() and log10().
* java/lang/natMath.cc (log10): New function.
* java/security/VMSecureRandom.java: New override.
* java/util/logging/Logger.java: Updated to latest classpath
version.
* java/util/logging/LogManager.java: New override.
From-SVN: r113887
This commit is contained in:
@@ -40,6 +40,7 @@ package java.util.regex;
|
||||
|
||||
import gnu.regexp.RE;
|
||||
import gnu.regexp.REMatch;
|
||||
import gnu.regexp.CharIndexed;
|
||||
|
||||
/**
|
||||
* Instance of a regular expression applied to a char sequence.
|
||||
@@ -50,6 +51,10 @@ public final class Matcher implements MatchResult
|
||||
{
|
||||
private Pattern pattern;
|
||||
private CharSequence input;
|
||||
// We use CharIndexed as an input object to the getMatch method in order
|
||||
// that /\G/ (the end of the previous match) may work. The information
|
||||
// of the previous match is stored in the CharIndexed object.
|
||||
private CharIndexed inputCharIndexed;
|
||||
private int position;
|
||||
private int appendPosition;
|
||||
private REMatch match;
|
||||
@@ -58,6 +63,7 @@ public final class Matcher implements MatchResult
|
||||
{
|
||||
this.pattern = pattern;
|
||||
this.input = input;
|
||||
this.inputCharIndexed = RE.makeCharIndexed(input, 0);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -119,7 +125,7 @@ public final class Matcher implements MatchResult
|
||||
public boolean find ()
|
||||
{
|
||||
boolean first = (match == null);
|
||||
match = pattern.getRE().getMatch(input, position);
|
||||
match = pattern.getRE().getMatch(inputCharIndexed, position);
|
||||
if (match != null)
|
||||
{
|
||||
int endIndex = match.getEndIndex();
|
||||
@@ -150,7 +156,7 @@ public final class Matcher implements MatchResult
|
||||
*/
|
||||
public boolean find (int start)
|
||||
{
|
||||
match = pattern.getRE().getMatch(input, start);
|
||||
match = pattern.getRE().getMatch(inputCharIndexed, start);
|
||||
if (match != null)
|
||||
{
|
||||
position = match.getEndIndex();
|
||||
@@ -212,7 +218,7 @@ public final class Matcher implements MatchResult
|
||||
|
||||
public boolean lookingAt ()
|
||||
{
|
||||
match = pattern.getRE().getMatch(input, 0);
|
||||
match = pattern.getRE().getMatch(inputCharIndexed, 0);
|
||||
if (match != null)
|
||||
{
|
||||
if (match.getStartIndex() == 0)
|
||||
@@ -237,7 +243,7 @@ public final class Matcher implements MatchResult
|
||||
*/
|
||||
public boolean matches ()
|
||||
{
|
||||
match = pattern.getRE().getMatch(input, 0, RE.REG_TRY_ENTIRE_MATCH);
|
||||
match = pattern.getRE().getMatch(inputCharIndexed, 0, RE.REG_TRY_ENTIRE_MATCH);
|
||||
if (match != null)
|
||||
{
|
||||
if (match.getStartIndex() == 0)
|
||||
|
||||
Reference in New Issue
Block a user