sam*_*mvv 7 compiler-construction typescript typescript-compiler-api
我正在构建一个小脚本,该脚本使用TypeScript Compiler API扫描具有给定类型成员的所有接口,其源代码可在此处找到。我检查这些类的成员,看看它们是如何相互关联的。
我的问题是:我怎么知道一种类型何时可以分配给另一种类型?我搜索了TypeChecker一种方法,但找不到。有没有人有任何指示?这是一个应该能够分析的东西的例子:
export enum ASTKind {
  Number,
  Addition,
  Multiplication,
}
export interface AST {
  kind: ASTKind  
}
export interface BinaryExpression extends AST {
  left: AST
  right: AST
}
export interface Addition extends BinaryExpression {
  kind: ASTKind.Addition 
}
export interface Multiplication extends BinaryExpression {
  kind: ASTKind.Multiplication 
}
本质上,我想要一个谓词,说明是否ASTKind.Multiplication可分配给ASTKind(在这种情况下为真)。
| 归档时间: | 
 | 
| 查看次数: | 445 次 | 
| 最近记录: |