created<T> method

T created<T>(
  1. InstanceProvider provider,
  2. T instance
)

Implementation

T created<T>(InstanceProvider provider, T instance) {
  // remember lifecycle processors

  if (instance is LifecycleProcessor) {
    lifecycleProcessors[instance.lifecycle.index].add(instance);

    // sort immediately

    lifecycleProcessors[instance.lifecycle.index].sort((a, b) => a.order.compareTo(b.order));
  }

  // remember instance

  instances.add(instance);

  // execute processors

  executeProcessors(provider, Lifecycle.onInject, instance);
  executeProcessors(provider, Lifecycle.onInit, instance);

  // done

  return instance;
}