ItemType upperBoundKeyType = keyUType.toItemType(); int rel = th.relationship(requiredKeyType, upperBoundKeyType); if (rel == TypeHierarchy.SAME_TYPE || rel == TypeHierarchy.SUBSUMES) { ItemType upperBoundValueType = valueUType.toItemType(); int rel = th.relationship(requiredValueItemType, upperBoundValueType); if (rel == TypeHierarchy.SAME_TYPE || rel == TypeHierarchy.SUBSUMES) {
ItemType upperBoundKeyType = keyUType.toItemType(); int rel = th.relationship(requiredKeyType, upperBoundKeyType); if (rel == TypeHierarchy.SAME_TYPE || rel == TypeHierarchy.SUBSUMES) { ItemType upperBoundValueType = valueUType.toItemType(); int rel = th.relationship(requiredValueItemType, upperBoundValueType); if (rel == TypeHierarchy.SAME_TYPE || rel == TypeHierarchy.SUBSUMES) {
return t1; } else { return t1.getUType().union(t2.getUType()).toItemType();
return t1; } else { return t1.getUType().union(t2.getUType()).toItemType();
ItemType target = targetUType.toItemType(); if (test == null || test instanceof AnyNodeTest) { itemType = target;
ItemType target = targetUType.toItemType(); if (test == null || test instanceof AnyNodeTest) { itemType = target;