tfpt review “/shelveset:DefaultBinderRefactoring2;REDMOND\tomat”
Outer DLR, Python:
Refactors default method call binder:
- Moves SiteLocalStorage to Python. Ruby uses a different storage class
and it’s very simple for languages to define and use their own. - ActionBinder.BindSpecialParameter shouldn’t deal with CodeContext and
SiteLocalStorage - moved to PythonBinder. - Moved ContextArgBuilder and SiteLocalStorageArgbuilder to Python.
- ArgBuilder.CanGenerateDelegate needs to be protected so that custom
ArgBuilders can override it. - Renames various identifiers to make naming consistent and more
meaningful. - Simplifies some methods in MethodBinder and MethodCandidate, removes
dependency on CodeContext - this was only used by JScript (disables a
couple of JS tests).
Ruby:
- Replaces calls to obsolete methods of default method binder with
those using meta-objects.
Tomas