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
public boolean isValidExpression() {
return object instanceof ITypeExpression || object instanceof DynamicImport;
public boolean isValidTypeExpression() {
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.
*/
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) {
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)