return valueOf(s.getAncestorSelector()) + " "
+ valueOf(s.getSimpleSelector());
}
} else if (selector instanceof ElementSelector) {
ElementSelector s = (ElementSelector) selector;
if (s.getLocalName() == null) {
return "*";
} else {
return escapeIdent(s.getLocalName());
}
} else if (selector instanceof NegativeSelector) {
// Unimplemented in CSS2?
} else if (selector instanceof ProcessingInstructionSelector) {
// Unimplemented in CSS2?
} else if (selector instanceof SiblingSelector) {
SiblingSelector s = (SiblingSelector) selector;
return valueOf(s.getSelector()) + "+" + valueOf(s.getSiblingSelector());
}
throw new RuntimeException("Unhandled selector of type "
+ selector.getClass().getName());
}