test_class.declarator: testInstance
test_class.modifier: private static
test_class.original_string: private static InMapRelation testInstance;
test_class.type: InMapRelation
test_class.var_name: testInstance
test_class.file: core/src/test/java/com/scottlogic/datahelix/generator/core/fieldspecs/relations/InMapRelationTest.java
test_class.identifier: InMapRelationTest
test_case.body: @Test
      void reduceValueToFieldSpec_whenInvalidIndex_throws() {
          assertThrows(IndexOutOfBoundsException.class, () -> testInstance.createModifierFromOtherValue(new DataBagValue(BigDecimal.valueOf(3))));
      }
test_case.class_method_signature: InMapRelationTest.reduceValueToFieldSpec_whenInvalidIndex_throws()
test_case.full_signature: @Test void reduceValueToFieldSpec_whenInvalidIndex_throws()
test_case.identifier: reduceValueToFieldSpec_whenInvalidIndex_throws
test_case.invocations: assertThrows createModifierFromOtherValue valueOf
test_case.modifiers: @Test
test_case.parameters: ()
test_case.return: void
test_case.signature: void reduceValueToFieldSpec_whenInvalidIndex_throws()
focal_class.declarator: main
focal_class.modifier: private final
focal_class.original_string: private final Field main;
focal_class.type: Field
focal_class.var_name: main
focal_class.declarator: other
focal_class.modifier: private final
focal_class.original_string: private final Field other;
focal_class.type: Field
focal_class.var_name: other
focal_class.declarator: underlyingList
focal_class.modifier: private final
focal_class.original_string: private final DistributedList<Object> underlyingList;
focal_class.type: DistributedList<Object>
focal_class.var_name: underlyingList
focal_class.file: core/src/main/java/com/scottlogic/datahelix/generator/core/fieldspecs/relations/InMapRelation.java
focal_class.identifier: InMapRelation
focal_class.interfaces: implements FieldSpecRelation
focal_class.class_method_signature: InMapRelation.InMapRelation(Field main, Field other, DistributedList<Object> underlyingList)
focal_class.full_signature: public  InMapRelation(Field main, Field other, DistributedList<Object> underlyingList)
focal_class.identifier: InMapRelation
focal_class.modifiers: public
focal_class.parameters: (Field main, Field other, DistributedList<Object> underlyingList)
focal_class.signature:  InMapRelation(Field main, Field other, DistributedList<Object> underlyingList)
focal_class.class_method_signature: InMapRelation.createModifierFromOtherFieldSpec(FieldSpec otherFieldSpec)
focal_class.full_signature: @Override public FieldSpec createModifierFromOtherFieldSpec(FieldSpec otherFieldSpec)
focal_class.identifier: createModifierFromOtherFieldSpec
focal_class.modifiers: @Override public
focal_class.parameters: (FieldSpec otherFieldSpec)
focal_class.return: FieldSpec
focal_class.signature: FieldSpec createModifierFromOtherFieldSpec(FieldSpec otherFieldSpec)
focal_class.class_method_signature: InMapRelation.createModifierFromOtherValue(DataBagValue otherFieldGeneratedValue)
focal_class.full_signature: @Override public FieldSpec createModifierFromOtherValue(DataBagValue otherFieldGeneratedValue)
focal_class.identifier: createModifierFromOtherValue
focal_class.modifiers: @Override public
focal_class.parameters: (DataBagValue otherFieldGeneratedValue)
focal_class.return: FieldSpec
focal_class.signature: FieldSpec createModifierFromOtherValue(DataBagValue otherFieldGeneratedValue)
focal_class.class_method_signature: InMapRelation.inverse()
focal_class.full_signature: @Override public FieldSpecRelation inverse()
focal_class.identifier: inverse
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: FieldSpecRelation
focal_class.signature: FieldSpecRelation inverse()
focal_class.class_method_signature: InMapRelation.main()
focal_class.full_signature: @Override public Field main()
focal_class.identifier: main
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Field
focal_class.signature: Field main()
focal_class.class_method_signature: InMapRelation.other()
focal_class.full_signature: @Override public Field other()
focal_class.identifier: other
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Field
focal_class.signature: Field other()
focal_class.class_method_signature: InMapRelation.getUnderlyingList()
focal_class.full_signature: public DistributedList<Object> getUnderlyingList()
focal_class.identifier: getUnderlyingList
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: DistributedList<Object>
focal_class.signature: DistributedList<Object> getUnderlyingList()
focal_class.class_method_signature: InMapRelation.negate()
focal_class.full_signature: @Override public Constraint negate()
focal_class.identifier: negate
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: Constraint
focal_class.signature: Constraint negate()
focal_method.body: @Override
      public FieldSpec createModifierFromOtherValue(DataBagValue otherFieldGeneratedValue) {
          BigDecimal value = (BigDecimal) otherFieldGeneratedValue.getValue();
  
          DistributedList<Object> newList = DistributedList.singleton(underlyingList.list().get(value.intValue()));
          return FieldSpecFactory.fromList(newList);
      }
focal_method.class_method_signature: InMapRelation.createModifierFromOtherValue(DataBagValue otherFieldGeneratedValue)
focal_method.full_signature: @Override public FieldSpec createModifierFromOtherValue(DataBagValue otherFieldGeneratedValue)
focal_method.identifier: createModifierFromOtherValue
focal_method.invocations: getValue singleton get list intValue fromList
focal_method.modifiers: @Override public
focal_method.parameters: (DataBagValue otherFieldGeneratedValue)
focal_method.return: FieldSpec
focal_method.signature: FieldSpec createModifierFromOtherValue(DataBagValue otherFieldGeneratedValue)