mirror of
https://github.com/github/codeql.git
synced 2026-05-03 04:39:29 +02:00
TypeScript: support optional and rest elements in static tuple type
This commit is contained in:
@@ -0,0 +1,10 @@
|
||||
| tst.ts:34:5:34:9 | tuple | [number, string] | 0 | number | 2 | no-rest |
|
||||
| tst.ts:34:5:34:9 | tuple | [number, string] | 1 | string | 2 | no-rest |
|
||||
| tst.ts:36:5:36:28 | tupleWi ... Element | [number, string, number?] | 0 | number | 2 | no-rest |
|
||||
| tst.ts:36:5:36:28 | tupleWi ... Element | [number, string, number?] | 1 | string | 2 | no-rest |
|
||||
| tst.ts:36:5:36:28 | tupleWi ... Element | [number, string, number?] | 2 | number | 2 | no-rest |
|
||||
| tst.ts:38:5:38:24 | tupleWithRestElement | [number, ...string[]] | 0 | number | 1 | string |
|
||||
| tst.ts:38:5:38:24 | tupleWithRestElement | [number, ...string[]] | 1 | string | 1 | string |
|
||||
| tst.ts:39:5:39:36 | tupleWi ... lements | [number, string?, ...number[]] | 0 | number | 1 | number |
|
||||
| tst.ts:39:5:39:36 | tupleWi ... lements | [number, string?, ...number[]] | 1 | string | 1 | number |
|
||||
| tst.ts:39:5:39:36 | tupleWi ... lements | [number, string?, ...number[]] | 2 | number | 1 | number |
|
||||
@@ -0,0 +1,12 @@
|
||||
import javascript
|
||||
|
||||
string getRest(TupleType tuple) {
|
||||
if tuple.hasRestElement() then
|
||||
result = tuple.getRestElementType().toString()
|
||||
else
|
||||
result = "no-rest"
|
||||
}
|
||||
|
||||
from Expr e, TupleType tuple, int n
|
||||
where e.getType() = tuple
|
||||
select e, tuple, n, tuple.getElementType(n), tuple.getMinimumLength(), getRest(tuple)
|
||||
Reference in New Issue
Block a user