Microsoft/TypeScript

Language Service: TypeParameter.constraint is lazily calculated, but does not have an accessor function

Fermée

#5 689 ouverte le 16 nov. 2015

 (4 commentaires) (0 réaction) (0 personne assignée)TypeScript (13 395 forks)batch import
BugDomain: APIHelp Wanted

Métriques du dépôt

Stars
 (108 860 étoiles)
Métriques de merge PR
 (Merge moyen 6j 17h) (9 PRs mergées en 30 j)

Description

Because of this, I have to go through this awkward motion every time:

function getConstraint( type: ts.TypeParameter ) {
  // This call will cause the typechecker to resolve properties, as well as a bunch of other information
  // about the type (such as generic constraints), but we don't actually need its result right now.
  type.getProperties(); 

  return type.constraint;
}

For some members (such as "properties" - above), there is an accessor function, which I can use to be sure the data is up to date. Another category of members don't need an accessor function, because they are calculated eagerly, and so are "always there".

But there is this third category of members, which fall through the gap. One example is TypeParameter.constraint. Another is InterfaceTypeWithDeclaredMembers.declaredProperties. There are probably more, but I haven't come across them yet.

Guide contributeur