github.com/teou/inji (go): * by liyibo 2016 1.if singleton, every struct ptr inject object can only have one instance in memory, we set twice in named to ensure that(first by name, then by struct ptr type)  2.TODO every struct inject object(not a ptr) should be handled like: create new struct on every inject  3.singleton(default false)  4.cannil(default false)  *
Keywords: bbbbbbb|container|dependency|dependency-injection|golang|graceful|graceful-shutdown|injection|injection-container