test_class.declarator: m = new HashMap<Integer, Number>() {
      {
        put(5, 6L);
      }
    }
test_class.modifier: private final
test_class.original_string: private final Map<Integer, Number> m = new HashMap<Integer, Number>() {
      {
        put(5, 6L);
      }
    };
test_class.type: Map<Integer, Number>
test_class.var_name: m
test_class.file: examples/basic/src/test/java/net/zerobuilder/examples/generics/Gen0Test.java
test_class.identifier: Gen0Test
test_case.body: @Test
    public void bar() throws Exception {
      Gen0<Number, Integer> gen = new Gen0<>(1L, 2f, 3d, 4);
      Gen0.Bar<Number, Integer> bar = barBuilder(gen).map0(emptyMap())
          .map1(emptyMap())
          .map2(emptyMap())
          .map3(emptyMap());
      Gen0.Bar<Number, Integer> updated = barUpdaterFactory(gen).updater(bar).map0(m).done();
      assertThat(updated.aa0, is(1L));
      assertThat(updated.aa1, is(2f));
      assertThat(updated.aa2, is(3d));
      assertThat(updated.ab0, is(4));
      assertThat(updated.map0, is(m));
      assertThat(updated.map1, is(emptyMap()));
      assertThat(updated.map2, is(emptyMap()));
      assertThat(updated.map3, is(emptyMap()));
      assertThat(bar.aa0, is(1L));
      assertThat(bar.aa1, is(2f));
      assertThat(bar.aa2, is(3d));
      assertThat(bar.ab0, is(4));
      assertThat(bar.map0, is(emptyMap()));
      assertThat(bar.map1, is(emptyMap()));
      assertThat(bar.map2, is(emptyMap()));
      assertThat(bar.map3, is(emptyMap()));
    }
test_case.class_method_signature: Gen0Test.bar()
test_case.full_signature: @Test public void bar()
test_case.identifier: bar
test_case.invocations: map3 map2 map1 map0 barBuilder emptyMap emptyMap emptyMap emptyMap done map0 updater barUpdaterFactory assertThat is assertThat is assertThat is assertThat is assertThat is assertThat is emptyMap assertThat is emptyMap assertThat is emptyMap assertThat is assertThat is assertThat is assertThat is assertThat is emptyMap assertThat is emptyMap assertThat is emptyMap assertThat is emptyMap
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void bar()
focal_class.declarator: aa0
focal_class.modifier: private final
focal_class.original_string: private final A aa0;
focal_class.type: A
focal_class.var_name: aa0
focal_class.declarator: aa1
focal_class.modifier: private final
focal_class.original_string: private final A aa1;
focal_class.type: A
focal_class.var_name: aa1
focal_class.declarator: aa2
focal_class.modifier: private final
focal_class.original_string: private final A aa2;
focal_class.type: A
focal_class.var_name: aa2
focal_class.declarator: ab0
focal_class.modifier: private final
focal_class.original_string: private final B ab0;
focal_class.type: B
focal_class.var_name: ab0
focal_class.file: examples/basic/src/main/java/net/zerobuilder/examples/generics/Gen0.java
focal_class.identifier: Gen0
focal_class.class_method_signature: Gen0.Gen0(A aa0, A aa1, A aa2, B ab0)
focal_class.full_signature:   Gen0(A aa0, A aa1, A aa2, B ab0)
focal_class.identifier: Gen0
focal_class.parameters: (A aa0, A aa1, A aa2, B ab0)
focal_class.signature:  Gen0(A aa0, A aa1, A aa2, B ab0)
focal_class.class_method_signature: Gen0.bar(Map<B, A> map0,
                  Map<B, A> map1,
                  Map<Map<B, A>, B> map2,
                  Map<Map<B, A>, B> map3)
focal_class.full_signature: @Updater @Builder Bar<A, B> bar(Map<B, A> map0,
                  Map<B, A> map1,
                  Map<Map<B, A>, B> map2,
                  Map<Map<B, A>, B> map3)
focal_class.identifier: bar
focal_class.modifiers: @Updater @Builder
focal_class.parameters: (Map<B, A> map0,
                  Map<B, A> map1,
                  Map<Map<B, A>, B> map2,
                  Map<Map<B, A>, B> map3)
focal_class.return: Bar<A, B>
focal_class.signature: Bar<A, B> bar(Map<B, A> map0,
                  Map<B, A> map1,
                  Map<Map<B, A>, B> map2,
                  Map<Map<B, A>, B> map3)
focal_method.body: @Updater
    @Builder
    Bar<A, B> bar(Map<B, A> map0,
                  Map<B, A> map1,
                  Map<Map<B, A>, B> map2,
                  Map<Map<B, A>, B> map3) {
      return new Bar<>(aa0, aa1, aa2, ab0, map0, map1, map2, map3);
    }
focal_method.class_method_signature: Gen0.bar(Map<B, A> map0,
                  Map<B, A> map1,
                  Map<Map<B, A>, B> map2,
                  Map<Map<B, A>, B> map3)
focal_method.full_signature: @Updater @Builder Bar<A, B> bar(Map<B, A> map0,
                  Map<B, A> map1,
                  Map<Map<B, A>, B> map2,
                  Map<Map<B, A>, B> map3)
focal_method.identifier: bar
focal_method.modifiers: @Updater @Builder
focal_method.parameters: (Map<B, A> map0,
                  Map<B, A> map1,
                  Map<Map<B, A>, B> map2,
                  Map<Map<B, A>, B> map3)
focal_method.return: Bar<A, B>
focal_method.signature: Bar<A, B> bar(Map<B, A> map0,
                  Map<B, A> map1,
                  Map<Map<B, A>, B> map2,
                  Map<Map<B, A>, B> map3)