Imported GNU Classpath 0.90
Imported GNU Classpath 0.90
* scripts/makemake.tcl: Set gnu/java/awt/peer/swing to ignore.
* gnu/classpath/jdwp/VMFrame.java (SIZE): New constant.
* java/lang/VMCompiler.java: Use gnu.java.security.hash.MD5.
* java/lang/Math.java: New override file.
* java/lang/Character.java: Merged from Classpath.
(start, end): Now 'int's.
(canonicalName): New field.
(CANONICAL_NAME, NO_SPACES_NAME, CONSTANT_NAME): New constants.
(UnicodeBlock): Added argument.
(of): New overload.
(forName): New method.
Updated unicode blocks.
(sets): Updated.
* sources.am: Regenerated.
* Makefile.in: Likewise.
From-SVN: r111942
This commit is contained in:
@@ -408,7 +408,7 @@ class Stylesheet
|
||||
{
|
||||
if (debug)
|
||||
System.err.println("getTemplate: mode="+mode+" context="+context);
|
||||
Set candidates = new TreeSet();
|
||||
Template selected = null;
|
||||
for (Iterator j = templates.iterator(); j.hasNext(); )
|
||||
{
|
||||
Template t = (Template) j.next();
|
||||
@@ -426,10 +426,21 @@ class Stylesheet
|
||||
}
|
||||
//System.err.println("\t"+context+" "+t+"="+isMatch);
|
||||
if (isMatch)
|
||||
candidates.add(t);
|
||||
{
|
||||
// Conflict resolution
|
||||
// @see http://www.w3.org/TR/xslt#conflict
|
||||
if (selected == null)
|
||||
selected = t;
|
||||
else
|
||||
{
|
||||
if (t.precedence < selected.precedence ||
|
||||
t.priority < selected.priority)
|
||||
continue;
|
||||
selected = t;
|
||||
}
|
||||
}
|
||||
}
|
||||
//System.err.println("\tcandidates="+candidates);
|
||||
if (candidates.isEmpty())
|
||||
if (selected == null)
|
||||
{
|
||||
// Apply built-in template
|
||||
// Current template is unchanged
|
||||
@@ -451,32 +462,39 @@ class Stylesheet
|
||||
return null;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
Template t = (Template) candidates.iterator().next();
|
||||
// Set current template
|
||||
currentTemplate = t;
|
||||
if (debug)
|
||||
System.err.println("\ttemplate="+t+" context="+context);
|
||||
return t.node;
|
||||
}
|
||||
// Set current template
|
||||
currentTemplate = selected;
|
||||
if (debug)
|
||||
System.err.println("\ttemplate="+currentTemplate+" context="+context);
|
||||
return currentTemplate.node;
|
||||
}
|
||||
|
||||
TemplateNode getTemplate(QName mode, QName name)
|
||||
throws TransformerException
|
||||
{
|
||||
Set candidates = new TreeSet();
|
||||
Template selected = null;
|
||||
for (Iterator j = templates.iterator(); j.hasNext(); )
|
||||
{
|
||||
Template t = (Template) j.next();
|
||||
boolean isMatch = t.matches(name);
|
||||
if (isMatch)
|
||||
candidates.add(t);
|
||||
{
|
||||
// Conflict resolution
|
||||
// @see http://www.w3.org/TR/xslt#conflict
|
||||
if (selected == null)
|
||||
selected = t;
|
||||
else
|
||||
{
|
||||
if (t.precedence < selected.precedence ||
|
||||
t.priority < selected.priority)
|
||||
continue;
|
||||
selected = t;
|
||||
}
|
||||
}
|
||||
}
|
||||
if (candidates.isEmpty())
|
||||
if (selected == null)
|
||||
return null;
|
||||
Template t = (Template) candidates.iterator().next();
|
||||
return t.node;
|
||||
return selected.node;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -504,11 +522,9 @@ class Stylesheet
|
||||
String p = getAttribute(attrs, "priority");
|
||||
String mm = getAttribute(attrs, "mode");
|
||||
QName mode = (mm == null) ? null : getQName(mm);
|
||||
double priority = (p == null) ? Template.DEFAULT_PRIORITY :
|
||||
Double.parseDouble(p);
|
||||
Node children = node.getFirstChild();
|
||||
return new Template(this, name, match, parse(children),
|
||||
precedence, priority, mode);
|
||||
precedence, p, mode);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -799,7 +815,7 @@ class Stylesheet
|
||||
templates.add(new Template(this, null, new Root(),
|
||||
parse(rootClone),
|
||||
precedence,
|
||||
Template.DEFAULT_PRIORITY,
|
||||
null,
|
||||
null));
|
||||
}
|
||||
else
|
||||
|
||||
Reference in New Issue
Block a user