The context does not include children of an elements siblings so it is necessary to record for each element that has been started but not yet ended whether any of its children matched the contextual matcher. This is done by using a bit set that is indexed by the current depth. Only the bit at the current depth affects whether an element is in context.
Preceding sibling matchers do not differentiate between direct and indirect relationships. If an element has a direct relationship then it also has an indirect relationship.
|
|