Rename validation methods for type expressions and added recursive call for type validation.

Co-authored-by: Asgerf <asgerf@github.com>
This commit is contained in:
Napalys
2025-03-14 14:58:27 +01:00
parent 1468e81c55
commit c93be70053
3 changed files with 4 additions and 4 deletions

View File

@@ -71,7 +71,7 @@ public class MemberExpression extends Expression
} }
@Override @Override
public boolean isValidExpression() { public boolean isValidTypeExpression() {
return object instanceof ITypeExpression || object instanceof DynamicImport; return object instanceof ITypeExpression && ((ITypeExpression)object).isValidTypeExpression() || object instanceof DynamicImport;
} }
} }

View File

@@ -11,5 +11,5 @@ import com.semmle.js.ast.Literal;
* TypeScript AST does not distinguish <code>null</code> literals from the <code>null</code> type. * TypeScript AST does not distinguish <code>null</code> literals from the <code>null</code> type.
*/ */
public interface ITypeExpression extends INode, ITypedAstNode { public interface ITypeExpression extends INode, ITypedAstNode {
public default boolean isValidExpression() { return true; } public default boolean isValidTypeExpression() { return true; }
} }

View File

@@ -1907,7 +1907,7 @@ public class TypeScriptASTConverter {
} }
private ITypeExpression asType(Node node) { private ITypeExpression asType(Node node) {
return node instanceof ITypeExpression && ((ITypeExpression)node).isValidExpression() ? (ITypeExpression) node : null; return node instanceof ITypeExpression && ((ITypeExpression)node).isValidTypeExpression() ? (ITypeExpression) node : null;
} }
private List<ITypeExpression> convertChildrenAsTypes(JsonObject node, String child) private List<ITypeExpression> convertChildrenAsTypes(JsonObject node, String child)