private void computeInitialPositions ( ) { positions . putAll ( output . getPreExistingLocations ( ) ) ; for ( Key < ? > key : output . getImplicitlyBoundKeys ( ) ) { GinjectorBindings initialPosition = computeInitialPosition ( key ) ; PrettyPrinter . log ( logger , TreeLogger . DEBUG , PrettyPrinter . format ( "Initial highest visible position of %s is %s" , key , initialPosition ) ) ; positions . put ( key , initialPosition ) ; } }
Place an initial guess in the position map that places each implicit binding as high as possible in the injector tree without causing double binding .