tree 6a80c53600fcabbc272a2edc577bb140643c0b04
parent 95295fd11d11ed8b9943a4604d9f562c2b95d958
author Sam Berlin <sameb@google.com> 1386617179 -0500
committer Sam Berlin <sameb@google.com> 1386617179 -0500

Fix issue 723 -- minor optimizations to TypeConverterBindingProcessor.
Description in the bug describes this best:
TypeConverterBindingProcessor has two responsibilities: 1) prepare built-in type
converters for primitives, enums, classes, etc. and 2) process TypeConverter
bindings and register them with the containing injector.

The first responsibility only needs the injector reference, it doesn't need
access to the processor's Errors cache. However, the current implementation
runs in the context of the processor and creates a number of anonymous classes,
and they all contain an implicit reference (this$0) back to the processor. This
can lead to some Errors instances being kept alive longer than necessary by
these anonymous classes, but not a large number.

Changing the prepareBuiltInConverters implementation over to use static methods
that pass the injector as an argument fixes this problem by removing the
implicit reference to the processor, since the anonymous classes are now
created from a static context.

Patch by Stuart McCulloch.  Thanks Stuart!
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=57906347
