protected void constructSet2ndStep(MappingNode node, Set<Object> set) { List<NodeTuple> nodeValue = node.getValue(); for (NodeTuple tuple : nodeValue) { Node keyNode = tuple.getKeyNode(); Object key = constructObject(keyNode); if (key != null) { try { key.hashCode();// check circular dependencies } catch (Exception e) { throw new ConstructorException("while constructing a Set", node.getStartMark(), "found unacceptable key " + key, tuple.getKeyNode().getStartMark(), e); } } if (keyNode.isTwoStepsConstruction()) { /* * if keyObject is created it 2 steps we should postpone putting * it into the set because it may have different hash after * initialization compared to clean just created one. And set of * course does not observe value hashCode changes. */ sets2fill.add(0, new RecursiveTuple<Set<Object>, Object>(set, key)); } else { set.add(key); } } }
private void fillRecursive() { if (!maps2fill.isEmpty()) { for (RecursiveTuple<Map<Object, Object>, RecursiveTuple<Object, Object>> entry : maps2fill) { RecursiveTuple<Object, Object> key_value = entry._2(); entry._1().put(key_value._1(), key_value._2()); } maps2fill.clear(); } if (!sets2fill.isEmpty()) { for (RecursiveTuple<Set<Object>, Object> value : sets2fill) { value._1().add(value._2()); } sets2fill.clear(); } }
new RecursiveTuple<Map<Object, Object>, RecursiveTuple<Object, Object>>( mapping, new RecursiveTuple<Object, Object>(key, value))); } else { mapping.put(key, value);
new RecursiveTuple<Map<Object, Object>, RecursiveTuple<Object, Object>>( mapping, new RecursiveTuple<Object, Object>(key, value))); } else { mapping.put(key, value);
new RecursiveTuple<Map<Object, Object>, RecursiveTuple<Object, Object>>( mapping, new RecursiveTuple<Object, Object>(key, value))); } else { mapping.put(key, value);
protected void constructSet2ndStep(MappingNode node, Set<Object> set) { List<NodeTuple> nodeValue = (List<NodeTuple>) node.getValue(); for (NodeTuple tuple : nodeValue) { Node keyNode = tuple.getKeyNode(); Object key = constructObject(keyNode); if (key != null) { try { key.hashCode();// check circular dependencies } catch (Exception e) { throw new ConstructorException("while constructing a Set", node.getStartMark(), "found unacceptable key " + key, tuple.getKeyNode().getStartMark(), e); } } if (keyNode.isTwoStepsConstruction()) { /* * if keyObject is created it 2 steps we should postpone putting * it into the set because it may have different hash after * initialization compared to clean just created one. And set of * course does not observe value hashCode changes. */ sets2fill.add(0, new RecursiveTuple<Set<Object>, Object>(set, key)); } else { set.add(key); } } }
protected void constructSet2ndStep(MappingNode node, Set<Object> set) { List<NodeTuple> nodeValue = node.getValue(); for (NodeTuple tuple : nodeValue) { Node keyNode = tuple.getKeyNode(); Object key = constructObject(keyNode); if (key != null) { try { key.hashCode();// check circular dependencies } catch (Exception e) { throw new ConstructorException("while constructing a Set", node.getStartMark(), "found unacceptable key " + key, tuple.getKeyNode().getStartMark(), e); } } if (keyNode.isTwoStepsConstruction()) { /* * if keyObject is created it 2 steps we should postpone putting * it into the set because it may have different hash after * initialization compared to clean just created one. And set of * course does not observe value hashCode changes. */ sets2fill.add(0, new RecursiveTuple<Set<Object>, Object>(set, key)); } else { set.add(key); } } }
protected void constructSet2ndStep(MappingNode node, Set<Object> set) { List<NodeTuple> nodeValue = (List<NodeTuple>) node.getValue(); for (NodeTuple tuple : nodeValue) { Node keyNode = tuple.getKeyNode(); Object key = constructObject(keyNode); if (key != null) { try { key.hashCode();// check circular dependencies } catch (Exception e) { throw new ConstructorException("while constructing a Set", node.getStartMark(), "found unacceptable key " + key, tuple.getKeyNode().getStartMark(), e); } } if (keyNode.isTwoStepsConstruction()) { /* * if keyObject is created it 2 steps we should postpone putting * it into the set because it may have different hash after * initialization compared to clean just created one. And set of * course does not observe value hashCode changes. */ sets2fill.add(0, new RecursiveTuple<Set<Object>, Object>(set, key)); } else { set.add(key); } } }
private void fillRecursive() { if (!maps2fill.isEmpty()) { for (RecursiveTuple<Map<Object, Object>, RecursiveTuple<Object, Object>> entry : maps2fill) { RecursiveTuple<Object, Object> key_value = entry._2(); entry._1().put(key_value._1(), key_value._2()); } maps2fill.clear(); } if (!sets2fill.isEmpty()) { for (RecursiveTuple<Set<Object>, Object> value : sets2fill) { value._1().add(value._2()); } sets2fill.clear(); } }
private void fillRecursive() { if (!maps2fill.isEmpty()) { for (RecursiveTuple<Map<Object, Object>, RecursiveTuple<Object, Object>> entry : maps2fill) { RecursiveTuple<Object, Object> key_value = entry._2(); entry._1().put(key_value._1(), key_value._2()); } maps2fill.clear(); } if (!sets2fill.isEmpty()) { for (RecursiveTuple<Set<Object>, Object> value : sets2fill) { value._1().add(value._2()); } sets2fill.clear(); } }
private void fillRecursive() { if (!maps2fill.isEmpty()) { for (RecursiveTuple<Map<Object, Object>, RecursiveTuple<Object, Object>> entry : maps2fill) { RecursiveTuple<Object, Object> key_value = entry._2(); entry._1().put(key_value._1(), key_value._2()); } maps2fill.clear(); } if (!sets2fill.isEmpty()) { for (RecursiveTuple<Set<Object>, Object> value : sets2fill) { value._1().add(value._2()); } sets2fill.clear(); } }
new RecursiveTuple<Map<Object, Object>, RecursiveTuple<Object, Object>>( mapping, new RecursiveTuple<Object, Object>(key, value))); } else { mapping.put(key, value);