tree 80605c3f17506a4b48113a2a5fdd6a912e4528ae
parent 1fe279d8598693e8005b71d6db386a96f2e49ce3
author Paul Berry <paulberry@google.com> 1528121146 +0000
committer commit-bot@chromium.org <commit-bot@chromium.org> 1528121146 +0000

Clean up FunctionTypeImpl constructors.

Previously, FunctionTypeImpl.elementWithNameAndArgs was used for two
purposes: (1) when creating a FunctionTypeImpl for an executable
element, to initialize _typeArguments to the types of the type
parameters that are in scope, and (2) when creating a FunctionTypeImpl
for a typedef, to supply the type arguments necessary to instantiate
the typedef.  (1) turns out to be unnecessary, since the
FunctionTypeImpl.typeArguments getter automatically gathers type
arguments from enclosing elements if necessary, and (2) makes more
sense to do as part of the .forTypedef constructor.  So this CL
removes FunctionTypeImpl.elementWithNameAndArgs and updates its
callers to use the unnamed constructor or the .forTypedef constructor,
as appropriate.

Also, a check is added to make sure that the unnamed constructor is
never accidentally used for typedefs.  So now FunctionTypeImpl has
just three public constructors, each with a clear use case, enforced
either by an assertion or by the type system:

- The unnamed constructor (for executable elements, not typedefs)

- The .forTypedef constructor (for typedefs only)

- The .fresh constructor (for creating one FunctionTypeImpl from
  another by binding fresh type parameters)

Finally, the public constructors for FunctionTypeImpl are all changed
to factories so that client code can't inadvertently FunctionTypeImpl.
(It shouldn't anyway, since FunctionTypeImpl is defined inside src/,
but this gives an extra level of safety).

Change-Id: I5f7abc1ca114eb612cbf539c1d61fc0cace5a4dd
Reviewed-on: https://dart-review.googlesource.com/58043
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Reviewed-by: Mike Fairhurst <mfairhurst@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
