You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I'm trying to implement a tslint custom rule to manually force and check yield typings inside of generator-based sagas from redux-saga. As the statuses of #2983 and similar issues are unknown it seems like custom rule is the only way for now.
So, at the moment I'm able to only force setting explicit type on the left side of yield expression:
The next step is to extract the types of the left and right sides of such yield and it's possible with public TypeChecker#getTypeFromTypeNode.
Now when both types are available they could be checked for assignability with helpers under // TYPE CHECKING section in compiler/checker.ts in createTypechecker factory function (like checkTypeAssignableTo), but unfortunately they are isolated inside that factory.
Therefore I suggest exporting that helpers from compiler/checker.ts on the module-level (or under a namespace, or even as TypeChecker static fields), they will be very helpful for implementing such custom rules.
The text was updated successfully, but these errors were encountered:
@raveclassic and anybody else looking at type checking saga yield calls: I've create a very crude custom tslint rule here.
The rules checks that the return type of the function passed to select and call matches the type of the variable on the left side of the yield and the types are matched using the result of typeToString.
It's not perfect, but it works for my needs, hope it helps.
I'm trying to implement a tslint custom rule to manually force and check yield typings inside of generator-based sagas from redux-saga. As the statuses of #2983 and similar issues are unknown it seems like custom rule is the only way for now.
So, at the moment I'm able to only force setting explicit type on the left side of yield expression:
The next step is to extract the types of the left and right sides of such yield and it's possible with public
TypeChecker#getTypeFromTypeNode
.Now when both types are available they could be checked for assignability with helpers under
// TYPE CHECKING
section incompiler/checker.ts
increateTypechecker
factory function (likecheckTypeAssignableTo
), but unfortunately they are isolated inside that factory.Therefore I suggest exporting that helpers from
compiler/checker.ts
on the module-level (or under a namespace, or even asTypeChecker
static fields), they will be very helpful for implementing such custom rules.The text was updated successfully, but these errors were encountered: