test_class.declarator: iMap
test_class.modifier: protected
test_class.original_string: protected InstanceMap iMap;
test_class.type: InstanceMap
test_class.var_name: iMap
test_class.declarator: FOO_FACTORY = new Factory<Foo>(){
          @Override
          public Foo create(InstanceMap map) {
              return new Foo();
          }
      }
test_class.modifier: public static final
test_class.original_string: public static final Factory<Foo> FOO_FACTORY = new Factory<Foo>(){
          @Override
          public Foo create(InstanceMap map) {
              return new Foo();
          }
      };
test_class.type: Factory<Foo>
test_class.var_name: FOO_FACTORY
test_class.declarator: BAR_FACTORY = new Factory<Bar>(){
          @Override
          public Bar create(InstanceMap map) {
              return new Bar();
          }
      }
test_class.modifier: public static final
test_class.original_string: public static final Factory<Bar> BAR_FACTORY = new Factory<Bar>(){
          @Override
          public Bar create(InstanceMap map) {
              return new Bar();
          }
      };
test_class.type: Factory<Bar>
test_class.var_name: BAR_FACTORY
test_class.file: objects/src/test/java/org/cthul/objects/instance/InstanceMapTest.java
test_class.identifier: InstanceMapTest
test_case.body: @Test
      public void test_default_inject() {
          DefInject ci = iMap.getOrCreate(DefInject.class);
          assertThat("foo", ci.foo, is(notNullValue()));
          assertThat("bar", ci.bar, is(notNullValue()));
          assertThat("bar2", ci.bar2, is(notNullValue()));
          assertThat(ci.bar2, is(not(sameInstance(ci.bar))));
      }
test_case.class_method_signature: InstanceMapTest.test_default_inject()
test_case.full_signature: @Test public void test_default_inject()
test_case.identifier: test_default_inject
test_case.invocations: getOrCreate assertThat is notNullValue assertThat is notNullValue assertThat is notNullValue assertThat is not sameInstance
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void test_default_inject()
focal_class.declarator: AMBIGUOUS = new Ambiguous()
focal_class.modifier: protected static final
focal_class.original_string: protected static final Ambiguous AMBIGUOUS = new Ambiguous();
focal_class.type: Ambiguous
focal_class.var_name: AMBIGUOUS
focal_class.declarator: ANY_INTERFACE = AnyInterface.class
focal_class.modifier: public static final
focal_class.original_string: public static final Class<?> ANY_INTERFACE = AnyInterface.class;
focal_class.type: Class<?>
focal_class.var_name: ANY_INTERFACE
focal_class.declarator: NO_LIMIT = null
focal_class.modifier: public static final
focal_class.original_string: public static final Class[] NO_LIMIT = null;
focal_class.type: Class[]
focal_class.var_name: NO_LIMIT
focal_class.declarator: LIMIT_NO_INTERFACES = {Object.class}
focal_class.modifier: public static final
focal_class.original_string: public static final Class[] LIMIT_NO_INTERFACES = {Object.class};
focal_class.type: Class[]
focal_class.var_name: LIMIT_NO_INTERFACES
focal_class.declarator: LIMIT_INTERFACES_ONLY = {ANY_INTERFACE}
focal_class.modifier: public static final
focal_class.original_string: public static final Class[] LIMIT_INTERFACES_ONLY = {ANY_INTERFACE};
focal_class.type: Class[]
focal_class.var_name: LIMIT_INTERFACES_ONLY
focal_class.declarator: map = new HashMap<>()
focal_class.modifier: private final
focal_class.original_string: private final Map<String, Object> map = new HashMap<>();
focal_class.type: Map<String, Object>
focal_class.var_name: map
focal_class.declarator: properties = new HashMap<>()
focal_class.modifier: private final
focal_class.original_string: private final Map<String, List<Property>> properties = new HashMap<>();
focal_class.type: Map<String, List<Property>>
focal_class.var_name: properties
focal_class.declarator: initializing = new HashSet<>()
focal_class.modifier: private final
focal_class.original_string: private final Set<Object> initializing = new HashSet<>();
focal_class.type: Set<Object>
focal_class.var_name: initializing
focal_class.declarator: lateInits = new ArrayList<>()
focal_class.modifier: private final
focal_class.original_string: private final List<ObjectConfig> lateInits = new ArrayList<>();
focal_class.type: List<ObjectConfig>
focal_class.var_name: lateInits
focal_class.declarator: IS_INITIALIZING = " is currently initializing"
focal_class.modifier: protected static final
focal_class.original_string: protected static final String IS_INITIALIZING = " is currently initializing";
focal_class.type: String
focal_class.var_name: IS_INITIALIZING
focal_class.declarator: DEFAULT_INJECT = new Inject() {
          @Override
          public String value() { return ""; }
          @Override
          public boolean create() { return false; }
          @Override
          public Class<?> impl() { return Void.class; }
          @Override
          public String factory() { return ""; }
          @Override
          public boolean late() { return false; }
          @Override
          public boolean autoUpdate() { return true; }
          @Override
          public Class<? extends Annotation> annotationType() { return Inject.class; }
      }
focal_class.modifier: protected static final
focal_class.original_string: protected static final Inject DEFAULT_INJECT = new Inject() {
          @Override
          public String value() { return ""; }
          @Override
          public boolean create() { return false; }
          @Override
          public Class<?> impl() { return Void.class; }
          @Override
          public String factory() { return ""; }
          @Override
          public boolean late() { return false; }
          @Override
          public boolean autoUpdate() { return true; }
          @Override
          public Class<? extends Annotation> annotationType() { return Inject.class; }
      };
focal_class.type: Inject
focal_class.var_name: DEFAULT_INJECT
focal_class.declarator: NO_UPDATE = new Inject() {
          @Override
          public String value() { return ""; }
          @Override
          public boolean create() { return false; }
          @Override
          public Class<?> impl() { return Void.class; }
          @Override
          public String factory() { return ""; }
          @Override
          public boolean late() { return false; }
          @Override
          public boolean autoUpdate() { return false; }
          @Override
          public Class<? extends Annotation> annotationType() { return Inject.class; }
      }
focal_class.modifier: protected static final
focal_class.original_string: protected static final Inject NO_UPDATE = new Inject() {
          @Override
          public String value() { return ""; }
          @Override
          public boolean create() { return false; }
          @Override
          public Class<?> impl() { return Void.class; }
          @Override
          public String factory() { return ""; }
          @Override
          public boolean late() { return false; }
          @Override
          public boolean autoUpdate() { return false; }
          @Override
          public Class<? extends Annotation> annotationType() { return Inject.class; }
      };
focal_class.type: Inject
focal_class.var_name: NO_UPDATE
focal_class.file: objects/src/main/java/org/cthul/objects/instance/InstanceMap.java
focal_class.identifier: InstanceMap
focal_class.class_method_signature: InstanceMap.InstanceMap()
focal_class.full_signature: @SuppressWarnings({"OverridableMethodCallInConstructor", "LeakingThisInConstructor"}) public  InstanceMap()
focal_class.identifier: InstanceMap
focal_class.modifiers: @SuppressWarnings({"OverridableMethodCallInConstructor", "LeakingThisInConstructor"}) public
focal_class.parameters: ()
focal_class.signature:  InstanceMap()
focal_class.class_method_signature: InstanceMap.InstanceMap(InstanceMap source)
focal_class.full_signature: @SuppressWarnings({"OverridableMethodCallInConstructor", "LeakingThisInConstructor"}) protected  InstanceMap(InstanceMap source)
focal_class.identifier: InstanceMap
focal_class.modifiers: @SuppressWarnings({"OverridableMethodCallInConstructor", "LeakingThisInConstructor"}) protected
focal_class.parameters: (InstanceMap source)
focal_class.signature:  InstanceMap(InstanceMap source)
focal_class.class_method_signature: InstanceMap.put(String key, Object value)
focal_class.full_signature: public Object put(String key, Object value)
focal_class.identifier: put
focal_class.modifiers: public
focal_class.parameters: (String key, Object value)
focal_class.return: Object
focal_class.signature: Object put(String key, Object value)
focal_class.class_method_signature: InstanceMap.t_put(String key, Object value)
focal_class.full_signature: @SuppressWarnings("unchecked") protected final T t_put(String key, Object value)
focal_class.identifier: t_put
focal_class.modifiers: @SuppressWarnings("unchecked") protected final
focal_class.parameters: (String key, Object value)
focal_class.return: T
focal_class.signature: T t_put(String key, Object value)
focal_class.class_method_signature: InstanceMap.updateProperties(String key, Object value)
focal_class.full_signature: protected void updateProperties(String key, Object value)
focal_class.identifier: updateProperties
focal_class.modifiers: protected
focal_class.parameters: (String key, Object value)
focal_class.return: void
focal_class.signature: void updateProperties(String key, Object value)
focal_class.class_method_signature: InstanceMap.addAutoUpdated(String key, Property p)
focal_class.full_signature: protected void addAutoUpdated(String key, Property p)
focal_class.identifier: addAutoUpdated
focal_class.modifiers: protected
focal_class.parameters: (String key, Property p)
focal_class.return: void
focal_class.signature: void addAutoUpdated(String key, Property p)
focal_class.class_method_signature: InstanceMap.put(Class<?> clazz, Object value, Class... limit)
focal_class.full_signature: public Object put(Class<?> clazz, Object value, Class... limit)
focal_class.identifier: put
focal_class.modifiers: public
focal_class.parameters: (Class<?> clazz, Object value, Class... limit)
focal_class.return: Object
focal_class.signature: Object put(Class<?> clazz, Object value, Class... limit)
focal_class.class_method_signature: InstanceMap.put(Class<?> clazz, Object value)
focal_class.full_signature: public Object put(Class<?> clazz, Object value)
focal_class.identifier: put
focal_class.modifiers: public
focal_class.parameters: (Class<?> clazz, Object value)
focal_class.return: Object
focal_class.signature: Object put(Class<?> clazz, Object value)
focal_class.class_method_signature: InstanceMap.replace(Class<T> clazz, Object value, Class... limit)
focal_class.full_signature: public T replace(Class<T> clazz, Object value, Class... limit)
focal_class.identifier: replace
focal_class.modifiers: public
focal_class.parameters: (Class<T> clazz, Object value, Class... limit)
focal_class.return: T
focal_class.signature: T replace(Class<T> clazz, Object value, Class... limit)
focal_class.class_method_signature: InstanceMap.replace(Class<T> clazz, Object value)
focal_class.full_signature: public T replace(Class<T> clazz, Object value)
focal_class.identifier: replace
focal_class.modifiers: public
focal_class.parameters: (Class<T> clazz, Object value)
focal_class.return: T
focal_class.signature: T replace(Class<T> clazz, Object value)
focal_class.class_method_signature: InstanceMap.checkLimit(Class<?> clazz, Class[] limit)
focal_class.full_signature: protected boolean checkLimit(Class<?> clazz, Class[] limit)
focal_class.identifier: checkLimit
focal_class.modifiers: protected
focal_class.parameters: (Class<?> clazz, Class[] limit)
focal_class.return: boolean
focal_class.signature: boolean checkLimit(Class<?> clazz, Class[] limit)
focal_class.class_method_signature: InstanceMap.get(String key)
focal_class.full_signature: public Object get(String key)
focal_class.identifier: get
focal_class.modifiers: public
focal_class.parameters: (String key)
focal_class.return: Object
focal_class.signature: Object get(String key)
focal_class.class_method_signature: InstanceMap.t_get(String key)
focal_class.full_signature: @SuppressWarnings("unchecked") protected final T t_get(String key)
focal_class.identifier: t_get
focal_class.modifiers: @SuppressWarnings("unchecked") protected final
focal_class.parameters: (String key)
focal_class.return: T
focal_class.signature: T t_get(String key)
focal_class.class_method_signature: InstanceMap.unsafeGet(String key)
focal_class.full_signature: protected Object unsafeGet(String key)
focal_class.identifier: unsafeGet
focal_class.modifiers: protected
focal_class.parameters: (String key)
focal_class.return: Object
focal_class.signature: Object unsafeGet(String key)
focal_class.class_method_signature: InstanceMap.get(Class<T> clazz)
focal_class.full_signature: public T get(Class<T> clazz)
focal_class.identifier: get
focal_class.modifiers: public
focal_class.parameters: (Class<T> clazz)
focal_class.return: T
focal_class.signature: T get(Class<T> clazz)
focal_class.class_method_signature: InstanceMap.putNew(String key, Factory<? extends T> factory)
focal_class.full_signature: public T putNew(String key, Factory<? extends T> factory)
focal_class.identifier: putNew
focal_class.modifiers: public
focal_class.parameters: (String key, Factory<? extends T> factory)
focal_class.return: T
focal_class.signature: T putNew(String key, Factory<? extends T> factory)
focal_class.class_method_signature: InstanceMap.putNew(Class<?> clazz, Factory<? extends T> factory)
focal_class.full_signature: public T putNew(Class<?> clazz, Factory<? extends T> factory)
focal_class.identifier: putNew
focal_class.modifiers: public
focal_class.parameters: (Class<?> clazz, Factory<? extends T> factory)
focal_class.return: T
focal_class.signature: T putNew(Class<?> clazz, Factory<? extends T> factory)
focal_class.class_method_signature: InstanceMap.getOrCreate(String key, Factory<T> factory)
focal_class.full_signature: public T getOrCreate(String key, Factory<T> factory)
focal_class.identifier: getOrCreate
focal_class.modifiers: public
focal_class.parameters: (String key, Factory<T> factory)
focal_class.return: T
focal_class.signature: T getOrCreate(String key, Factory<T> factory)
focal_class.class_method_signature: InstanceMap.getOrCreate(String key, Class<T> impl)
focal_class.full_signature: public T getOrCreate(String key, Class<T> impl)
focal_class.identifier: getOrCreate
focal_class.modifiers: public
focal_class.parameters: (String key, Class<T> impl)
focal_class.return: T
focal_class.signature: T getOrCreate(String key, Class<T> impl)
focal_class.class_method_signature: InstanceMap.getOrCreate(Class<T> clazz, Factory<? extends T> factory)
focal_class.full_signature: public T getOrCreate(Class<T> clazz, Factory<? extends T> factory)
focal_class.identifier: getOrCreate
focal_class.modifiers: public
focal_class.parameters: (Class<T> clazz, Factory<? extends T> factory)
focal_class.return: T
focal_class.signature: T getOrCreate(Class<T> clazz, Factory<? extends T> factory)
focal_class.class_method_signature: InstanceMap.getOrCreate(Class<T> clazz, Class<? extends T> impl)
focal_class.full_signature: public T getOrCreate(Class<T> clazz, Class<? extends T> impl)
focal_class.identifier: getOrCreate
focal_class.modifiers: public
focal_class.parameters: (Class<T> clazz, Class<? extends T> impl)
focal_class.return: T
focal_class.signature: T getOrCreate(Class<T> clazz, Class<? extends T> impl)
focal_class.class_method_signature: InstanceMap.getOrCreate(Class<T> clazz)
focal_class.full_signature: public T getOrCreate(Class<T> clazz)
focal_class.identifier: getOrCreate
focal_class.modifiers: public
focal_class.parameters: (Class<T> clazz)
focal_class.return: T
focal_class.signature: T getOrCreate(Class<T> clazz)
focal_class.class_method_signature: InstanceMap.get(Class<T> clazz, Inject inject)
focal_class.full_signature: public T get(Class<T> clazz, Inject inject)
focal_class.identifier: get
focal_class.modifiers: public
focal_class.parameters: (Class<T> clazz, Inject inject)
focal_class.return: T
focal_class.signature: T get(Class<T> clazz, Inject inject)
focal_class.class_method_signature: InstanceMap.remove(String key)
focal_class.full_signature: public Object remove(String key)
focal_class.identifier: remove
focal_class.modifiers: public
focal_class.parameters: (String key)
focal_class.return: Object
focal_class.signature: Object remove(String key)
focal_class.class_method_signature: InstanceMap.remove(Class<T> clazz)
focal_class.full_signature: @SuppressWarnings("unchecked") public T remove(Class<T> clazz)
focal_class.identifier: remove
focal_class.modifiers: @SuppressWarnings("unchecked") public
focal_class.parameters: (Class<T> clazz)
focal_class.return: T
focal_class.signature: T remove(Class<T> clazz)
focal_class.class_method_signature: InstanceMap.remove(Class<T> clazz, Class... limit)
focal_class.full_signature: @SuppressWarnings("unchecked") public T remove(Class<T> clazz, Class... limit)
focal_class.identifier: remove
focal_class.modifiers: @SuppressWarnings("unchecked") public
focal_class.parameters: (Class<T> clazz, Class... limit)
focal_class.return: T
focal_class.signature: T remove(Class<T> clazz, Class... limit)
focal_class.class_method_signature: InstanceMap.removeValue(Object value, Class<?> clazz, Class... limit)
focal_class.full_signature: protected void removeValue(Object value, Class<?> clazz, Class... limit)
focal_class.identifier: removeValue
focal_class.modifiers: protected
focal_class.parameters: (Object value, Class<?> clazz, Class... limit)
focal_class.return: void
focal_class.signature: void removeValue(Object value, Class<?> clazz, Class... limit)
focal_class.class_method_signature: InstanceMap.key(Class<?> clazz)
focal_class.full_signature: protected String key(Class<?> clazz)
focal_class.identifier: key
focal_class.modifiers: protected
focal_class.parameters: (Class<?> clazz)
focal_class.return: String
focal_class.signature: String key(Class<?> clazz)
focal_class.class_method_signature: InstanceMap.f(Class<T> clazz)
focal_class.full_signature: protected Factory<T> f(Class<T> clazz)
focal_class.identifier: f
focal_class.modifiers: protected
focal_class.parameters: (Class<T> clazz)
focal_class.return: Factory<T>
focal_class.signature: Factory<T> f(Class<T> clazz)
focal_class.class_method_signature: InstanceMap.isAmbiguous(Object v)
focal_class.full_signature: protected boolean isAmbiguous(Object v)
focal_class.identifier: isAmbiguous
focal_class.modifiers: protected
focal_class.parameters: (Object v)
focal_class.return: boolean
focal_class.signature: boolean isAmbiguous(Object v)
focal_class.class_method_signature: InstanceMap.initialize(T o)
focal_class.full_signature: public T initialize(T o)
focal_class.identifier: initialize
focal_class.modifiers: public
focal_class.parameters: (T o)
focal_class.return: T
focal_class.signature: T initialize(T o)
focal_class.class_method_signature: InstanceMap.lateInitialize()
focal_class.full_signature: protected void lateInitialize()
focal_class.identifier: lateInitialize
focal_class.modifiers: protected
focal_class.parameters: ()
focal_class.return: void
focal_class.signature: void lateInitialize()
focal_class.class_method_signature: InstanceMap.ensureNotInitializing(Object o)
focal_class.full_signature: protected void ensureNotInitializing(Object o)
focal_class.identifier: ensureNotInitializing
focal_class.modifiers: protected
focal_class.parameters: (Object o)
focal_class.return: void
focal_class.signature: void ensureNotInitializing(Object o)
focal_class.class_method_signature: InstanceMap.config(Object o)
focal_class.full_signature: protected ObjectConfig config(Object o)
focal_class.identifier: config
focal_class.modifiers: protected
focal_class.parameters: (Object o)
focal_class.return: ObjectConfig
focal_class.signature: ObjectConfig config(Object o)
focal_class.class_method_signature: InstanceMap.collectFields(ObjectConfig config, Object o)
focal_class.full_signature: protected void collectFields(ObjectConfig config, Object o)
focal_class.identifier: collectFields
focal_class.modifiers: protected
focal_class.parameters: (ObjectConfig config, Object o)
focal_class.return: void
focal_class.signature: void collectFields(ObjectConfig config, Object o)
focal_class.class_method_signature: InstanceMap.collectField(ObjectConfig config, Object o, Field f, Inject inject)
focal_class.full_signature: protected Init collectField(ObjectConfig config, Object o, Field f, Inject inject)
focal_class.identifier: collectField
focal_class.modifiers: protected
focal_class.parameters: (ObjectConfig config, Object o, Field f, Inject inject)
focal_class.return: Init
focal_class.signature: Init collectField(ObjectConfig config, Object o, Field f, Inject inject)
focal_class.class_method_signature: InstanceMap.collectField(ObjectConfig config, Object o, Field f, Initialize init)
focal_class.full_signature: protected Init collectField(ObjectConfig config, Object o, Field f, Initialize init)
focal_class.identifier: collectField
focal_class.modifiers: protected
focal_class.parameters: (ObjectConfig config, Object o, Field f, Initialize init)
focal_class.return: Init
focal_class.signature: Init collectField(ObjectConfig config, Object o, Field f, Initialize init)
focal_class.class_method_signature: InstanceMap.collectMethods(ObjectConfig config, Object o)
focal_class.full_signature: protected void collectMethods(ObjectConfig config, Object o)
focal_class.identifier: collectMethods
focal_class.modifiers: protected
focal_class.parameters: (ObjectConfig config, Object o)
focal_class.return: void
focal_class.signature: void collectMethods(ObjectConfig config, Object o)
focal_class.class_method_signature: InstanceMap.collectMethod(ObjectConfig config, Object o, Method m, Inject inject)
focal_class.full_signature: protected void collectMethod(ObjectConfig config, Object o, Method m, Inject inject)
focal_class.identifier: collectMethod
focal_class.modifiers: protected
focal_class.parameters: (ObjectConfig config, Object o, Method m, Inject inject)
focal_class.return: void
focal_class.signature: void collectMethod(ObjectConfig config, Object o, Method m, Inject inject)
focal_class.class_method_signature: InstanceMap.collectMethod(ObjectConfig config, Object o, Method m, Initialize initialize, Inject classInject)
focal_class.full_signature: protected void collectMethod(ObjectConfig config, Object o, Method m, Initialize initialize, Inject classInject)
focal_class.identifier: collectMethod
focal_class.modifiers: protected
focal_class.parameters: (ObjectConfig config, Object o, Method m, Initialize initialize, Inject classInject)
focal_class.return: void
focal_class.signature: void collectMethod(ObjectConfig config, Object o, Method m, Initialize initialize, Inject classInject)
focal_class.class_method_signature: InstanceMap.collectParams(Object o, Method m, Inject mInject, boolean initResult)
focal_class.full_signature: protected SetterInit collectParams(Object o, Method m, Inject mInject, boolean initResult)
focal_class.identifier: collectParams
focal_class.modifiers: protected
focal_class.parameters: (Object o, Method m, Inject mInject, boolean initResult)
focal_class.return: SetterInit
focal_class.signature: SetterInit collectParams(Object o, Method m, Inject mInject, boolean initResult)
focal_class.class_method_signature: InstanceMap.paramMerge(Inject param, Inject method, Method m, int pId)
focal_class.full_signature: protected Inject paramMerge(Inject param, Inject method, Method m, int pId)
focal_class.identifier: paramMerge
focal_class.modifiers: protected
focal_class.parameters: (Inject param, Inject method, Method m, int pId)
focal_class.return: Inject
focal_class.signature: Inject paramMerge(Inject param, Inject method, Method m, int pId)
focal_class.class_method_signature: InstanceMap.collectParam(SetterInit init, Object o, Method m, Inject inject, int paramId, Annotation[] ats, Class<?> type)
focal_class.full_signature: protected void collectParam(SetterInit init, Object o, Method m, Inject inject, int paramId, Annotation[] ats, Class<?> type)
focal_class.identifier: collectParam
focal_class.modifiers: protected
focal_class.parameters: (SetterInit init, Object o, Method m, Inject inject, int paramId, Annotation[] ats, Class<?> type)
focal_class.return: void
focal_class.signature: void collectParam(SetterInit init, Object o, Method m, Inject inject, int paramId, Annotation[] ats, Class<?> type)
focal_class.class_method_signature: InstanceMap.propertyKey(String key, Class<?> clazz)
focal_class.full_signature: protected String propertyKey(String key, Class<?> clazz)
focal_class.identifier: propertyKey
focal_class.modifiers: protected
focal_class.parameters: (String key, Class<?> clazz)
focal_class.return: String
focal_class.signature: String propertyKey(String key, Class<?> clazz)
focal_class.class_method_signature: InstanceMap.propertyCreate(Inject inject)
focal_class.full_signature: protected boolean propertyCreate(Inject inject)
focal_class.identifier: propertyCreate
focal_class.modifiers: protected
focal_class.parameters: (Inject inject)
focal_class.return: boolean
focal_class.signature: boolean propertyCreate(Inject inject)
focal_class.class_method_signature: InstanceMap.propertyImpl(Class<?> impl, Class<?> clazz)
focal_class.full_signature: @SuppressWarnings("unchecked") protected Class<T> propertyImpl(Class<?> impl, Class<?> clazz)
focal_class.identifier: propertyImpl
focal_class.modifiers: @SuppressWarnings("unchecked") protected
focal_class.parameters: (Class<?> impl, Class<?> clazz)
focal_class.return: Class<T>
focal_class.signature: Class<T> propertyImpl(Class<?> impl, Class<?> clazz)
focal_class.class_method_signature: InstanceMap.propertyFactory(Class<T> impl, String factory)
focal_class.full_signature: protected Factory<T> propertyFactory(Class<T> impl, String factory)
focal_class.identifier: propertyFactory
focal_class.modifiers: protected
focal_class.parameters: (Class<T> impl, String factory)
focal_class.return: Factory<T>
focal_class.signature: Factory<T> propertyFactory(Class<T> impl, String factory)
focal_class.class_method_signature: InstanceMap.addInject(Init init, ObjectConfig config, boolean late)
focal_class.full_signature: protected void addInject(Init init, ObjectConfig config, boolean late)
focal_class.identifier: addInject
focal_class.modifiers: protected
focal_class.parameters: (Init init, ObjectConfig config, boolean late)
focal_class.return: void
focal_class.signature: void addInject(Init init, ObjectConfig config, boolean late)
focal_class.class_method_signature: InstanceMap.addInit(Init init, ObjectConfig config, boolean late)
focal_class.full_signature: protected void addInit(Init init, ObjectConfig config, boolean late)
focal_class.identifier: addInit
focal_class.modifiers: protected
focal_class.parameters: (Init init, ObjectConfig config, boolean late)
focal_class.return: void
focal_class.signature: void addInit(Init init, ObjectConfig config, boolean late)
focal_class.class_method_signature: InstanceMap.getFactory(Class<?> clazz, String factory)
focal_class.full_signature: public static Object getFactory(Class<?> clazz, String factory)
focal_class.identifier: getFactory
focal_class.modifiers: public static
focal_class.parameters: (Class<?> clazz, String factory)
focal_class.return: Object
focal_class.signature: Object getFactory(Class<?> clazz, String factory)
focal_class.class_method_signature: InstanceMap.checkAccess(int modifier, String factory)
focal_class.full_signature: private static void checkAccess(int modifier, String factory)
focal_class.identifier: checkAccess
focal_class.modifiers: private static
focal_class.parameters: (int modifier, String factory)
focal_class.return: void
focal_class.signature: void checkAccess(int modifier, String factory)
focal_class.class_method_signature: InstanceMap.defaultInject(Class<?> clazz)
focal_class.full_signature: protected Inject defaultInject(Class<?> clazz)
focal_class.identifier: defaultInject
focal_class.modifiers: protected
focal_class.parameters: (Class<?> clazz)
focal_class.return: Inject
focal_class.signature: Inject defaultInject(Class<?> clazz)
focal_class.class_method_signature: InstanceMap.merge(final Inject inject, final Inject base)
focal_class.full_signature: protected static Inject merge(final Inject inject, final Inject base)
focal_class.identifier: merge
focal_class.modifiers: protected static
focal_class.parameters: (final Inject inject, final Inject base)
focal_class.return: Inject
focal_class.signature: Inject merge(final Inject inject, final Inject base)
focal_method.body: public <T> T getOrCreate(String key, Factory<T> factory) {
          T t = t_get(key);
          if (t == null) {
              t = putNew(key, factory);
          }
          return t;
      }
focal_method.class_method_signature: InstanceMap.getOrCreate(String key, Factory<T> factory)
focal_method.full_signature: public T getOrCreate(String key, Factory<T> factory)
focal_method.identifier: getOrCreate
focal_method.invocations: t_get putNew
focal_method.modifiers: public
focal_method.parameters: (String key, Factory<T> factory)
focal_method.return: T
focal_method.signature: T getOrCreate(String key, Factory<T> factory)