Skip to content

Commit 20128ad

Browse files
committed
Swift: make imported and exported modules a set
1 parent d7a3cb2 commit 20128ad

11 files changed

+36
-48
lines changed

swift/ql/.generated.list

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -384,7 +384,7 @@ ql/lib/codeql/swift/generated/OtherAvailabilitySpec.qll 0e26a203b26ff0581b7396b0
384384
ql/lib/codeql/swift/generated/ParentChild.qll 0ac2139b8b2e172858262d80950a0212b21fe46bf6af7259d9058fb7193f8242 6f7464ecd8ca04b6aa261139b36a162e5b0636237d514b8431ef4f97a1c603dc
385385
ql/lib/codeql/swift/generated/PlatformVersionAvailabilitySpec.qll f82d9ca416fe8bd59b5531b65b1c74c9f317b3297a6101544a11339a1cffce38 7f5c6d3309e66c134107afe55bae76dfc9a72cb7cdd6d4c3706b6b34cee09fa0
386386
ql/lib/codeql/swift/generated/PureSynthConstructors.qll 173c0dd59396a1de26fe870e3bc2766c46de689da2a4d8807cb62023bbce1a98 173c0dd59396a1de26fe870e3bc2766c46de689da2a4d8807cb62023bbce1a98
387-
ql/lib/codeql/swift/generated/Raw.qll efe60f045f8a4aecedd7bfe8110c0c10539bcdcb9f17f342cf560c8d065e6aff 261825907250bb4ddeba8ccce0df29b45f13c6fb338eb41a06ea6b43e7aa9788
387+
ql/lib/codeql/swift/generated/Raw.qll 02e54c90cb3ee38fe39b2c17fd4720b5a78fa617edb530a1627a2853798a272f 91f4d685e0e3ebec70566bbab89754b12af0be434445856c39a9b19e5d5e7041
388388
ql/lib/codeql/swift/generated/Synth.qll af02e0b49fe7b488592687996cc74d9525d4e3fbc9d324820b310b356f4d2612 5c740a660721173e9e4e45eb701d373ca19ff14d61cdaea309b65871e0deea90
389389
ql/lib/codeql/swift/generated/SynthConstructors.qll a1b3ca33017f82124286ccad317a05484fee144fb9c3cdd2e500ce38e5efcec4 a1b3ca33017f82124286ccad317a05484fee144fb9c3cdd2e500ce38e5efcec4
390390
ql/lib/codeql/swift/generated/UnknownFile.qll 0fcf9beb8de79440bcdfff4bb6ab3dd139bd273e6c32754e05e6a632651e85f6 0fcf9beb8de79440bcdfff4bb6ab3dd139bd273e6c32754e05e6a632651e85f6
@@ -414,7 +414,7 @@ ql/lib/codeql/swift/generated/decl/IfConfigDecl.qll 58c1a02a3867105c61d29e2d9bc6
414414
ql/lib/codeql/swift/generated/decl/ImportDecl.qll 8892cd34d182c6747e266e213f0239fd3402004370a9be6e52b9747d91a7b61b 2c07217ab1b7ebc39dc2cb20d45a2b1b899150cabd3b1a15cd8b1479bab64578
415415
ql/lib/codeql/swift/generated/decl/InfixOperatorDecl.qll d98168fdf180f28582bae8ec0242c1220559235230a9c94e9f479708c561ea21 aad805aa74d63116b19f435983d6df6df31cef6a5bbd30d7c2944280b470dee6
416416
ql/lib/codeql/swift/generated/decl/MissingMemberDecl.qll eaf8989eda461ec886a2e25c1e5e80fc4a409f079c8d28671e6e2127e3167479 d74b31b5dfa54ca5411cd5d41c58f1f76cfccc1e12b4f1fdeed398b4faae5355
417-
ql/lib/codeql/swift/generated/decl/ModuleDecl.qll 675135d140d273cd83e290cf433bcaebc48065d433e2cf8e570612b686d2fb53 d8cd5418205e05598800bf13e8aa01e6018b5c6727075381afd4c83136c29366
417+
ql/lib/codeql/swift/generated/decl/ModuleDecl.qll 0b809c371dae40cfdc7bf869c654158dc154e1551d8466c339742c7fdc26a5db 3d7efb0ccfd752d9f01624d21eba79067824b3910b11185c81f0b513b69e8c51
418418
ql/lib/codeql/swift/generated/decl/NominalTypeDecl.qll 7e8980cd646e9dee91e429f738d6682b18c8f8974c9561c7b936fca01b56fdb2 513e55dd6a68d83a8e884c9a373ecd70eca8e3957e0f5f6c2b06696e4f56df88
419419
ql/lib/codeql/swift/generated/decl/OpaqueTypeDecl.qll f2cdbc238b9ea67d5bc2defd8ec0455efafd7fdaeca5b2f72d0bbb16a8006d17 041724a6ec61b60291d2a68d228d5f106c02e1ba6bf3c1d3d0a6dda25777a0e5
420420
ql/lib/codeql/swift/generated/decl/OperatorDecl.qll 3ffdc7ab780ee94a975f0ce3ae4252b52762ca8dbea6f0eb95f951e404c36a5b 25e39ccd868fa2d1fbce0eb7cbf8e9c2aca67d6fd42f76e247fb0fa74a51b230
@@ -720,9 +720,9 @@ ql/test/extractor-tests/generated/decl/ImportDecl/ImportDecl_getImportedModule.q
720720
ql/test/extractor-tests/generated/decl/ImportDecl/ImportDecl_getMember.ql 6d48d3a93bc96dba3bda71ec9d9d6282615c2228a58da6167c169fafaedb3e17 8560b23d0f52b845c81727ce09c0b2f9647965c83d7de165e8cd3d91be5bdd42
721721
ql/test/extractor-tests/generated/decl/InfixOperatorDecl/MISSING_SOURCE.txt 66846d526b0bc4328735c3c4dd9c390a9325da5b5dfd42ec07622f9c7108a7d7 66846d526b0bc4328735c3c4dd9c390a9325da5b5dfd42ec07622f9c7108a7d7
722722
ql/test/extractor-tests/generated/decl/ModuleDecl/ModuleDecl.ql f9216e83077ebc0cb5a5bf2d7368af86167a1bfd378f9cd5592fd484a1bbc5dd 1c2de61cb064474340db10de4399c49f15eb0a5669e6dc9587d8b4f656b0134f
723+
ql/test/extractor-tests/generated/decl/ModuleDecl/ModuleDecl_getAnExportedModule.ql 321619519c5cffefda78f11f2c85a199af76fccbfcc51126c7a558ba12fdfd80 30e48eb820ba9d7f3ec30bf4536c0f84280c5f2ca8c63427f6b77d74a092e68b
724+
ql/test/extractor-tests/generated/decl/ModuleDecl/ModuleDecl_getAnImportedModule.ql 65fae5b1a7db3a11fd837ed78c663e8907306c36695ae73e4e29559755276fbe 3ddef1a7af7a636e66674fadb3e727ad18655a9ecb4c73fd3d6aca202f1191fb
723725
ql/test/extractor-tests/generated/decl/ModuleDecl/ModuleDecl_getBaseType.ql 54a4bd2cfa666271ae9092285bb7217b082c88483d614066cfb599fc8ab84305 8b24ab8e93efe3922cb192eb5de5f517763058782e83e8732153421adddd68e1
724-
ql/test/extractor-tests/generated/decl/ModuleDecl/ModuleDecl_getExportedModule.ql cfca012f0951c86560d892ea5eae182d5eda661c9484a0df71ef9c905123e8f6 dfebda4fcad0e2f2a2c944782a7355b3caeac569e5a45621c582bc1bb243b2cc
725-
ql/test/extractor-tests/generated/decl/ModuleDecl/ModuleDecl_getImportedModule.ql 44018a788205592c59cd10072f8b8d0558100bb15fff4b3e490176e86193e5b1 cc9fe6571713af8a0e844ac5da682c24feb1a2be4535e3feeb4cbbafba91a414
726726
ql/test/extractor-tests/generated/decl/ModuleDecl/ModuleDecl_getMember.ql a4663d47cf0a16a07167b9a64d56f8ba8e504a78142c7e216d1df69879df9130 3f6a4080e33bddd1e34fa25519d855811c256182055db4989be8150fcddd541b
727727
ql/test/extractor-tests/generated/decl/OpaqueTypeDecl/OpaqueTypeDecl.ql 16ccca5a90cc3133ab085ccb843416abc103f2fcf3423a84fbd7f5c15a5c7f17 242d7ea07842ee3fb0f9905b5cbc0ea744f1116c4591c5f133025260991bfdeb
728728
ql/test/extractor-tests/generated/decl/OpaqueTypeDecl/OpaqueTypeDecl_getBaseType.ql d030fd55ea5a5443c03e8ba1a024c03e3c68c96c948c850131f59fbac6409402 46816c1a75a4cf11db95884733382e46d5573b6c1116d5de0bfe5ae91fed4c3d

swift/ql/lib/codeql/swift/generated/Raw.qll

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -419,13 +419,15 @@ module Raw {
419419

420420
/**
421421
* Gets the `index`th imported module of this module declaration (0-based).
422+
*Gets any of the imported modules of this module declaration.
422423
*/
423-
ModuleDecl getImportedModule(int index) { module_decl_imported_modules(this, index, result) }
424+
ModuleDecl getAnImportedModule() { module_decl_imported_modules(this, result) }
424425

425426
/**
426427
* Gets the `index`th exported module of this module declaration (0-based).
428+
*Gets any of the exported modules of this module declaration.
427429
*/
428-
ModuleDecl getExportedModule(int index) { module_decl_exported_modules(this, index, result) }
430+
ModuleDecl getAnExportedModule() { module_decl_exported_modules(this, result) }
429431
}
430432

431433
class SubscriptDecl extends @subscript_decl, AbstractStorageDecl, GenericContext {

swift/ql/lib/codeql/swift/generated/decl/ModuleDecl.qll

Lines changed: 12 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -23,62 +23,52 @@ module Generated {
2323

2424
/**
2525
* Gets the `index`th imported module of this module declaration (0-based).
26+
*Gets any of the imported modules of this module declaration.
2627
*
2728
* This includes nodes from the "hidden" AST. It can be overridden in subclasses to change the
2829
* behavior of both the `Immediate` and non-`Immediate` versions.
2930
*/
30-
ModuleDecl getImmediateImportedModule(int index) {
31+
ModuleDecl getAnImmediateImportedModule() {
3132
result =
3233
Synth::convertModuleDeclFromRaw(Synth::convertModuleDeclToRaw(this)
3334
.(Raw::ModuleDecl)
34-
.getImportedModule(index))
35+
.getAnImportedModule())
3536
}
3637

3738
/**
3839
* Gets the `index`th imported module of this module declaration (0-based).
40+
*Gets any of the imported modules of this module declaration.
3941
*/
40-
final ModuleDecl getImportedModule(int index) {
41-
result = getImmediateImportedModule(index).resolve()
42-
}
43-
44-
/**
45-
* Gets any of the imported modules of this module declaration.
46-
*/
47-
final ModuleDecl getAnImportedModule() { result = getImportedModule(_) }
42+
final ModuleDecl getAnImportedModule() { result = getAnImmediateImportedModule().resolve() }
4843

4944
/**
5045
* Gets the number of imported modules of this module declaration.
5146
*/
52-
final int getNumberOfImportedModules() { result = count(int i | exists(getImportedModule(i))) }
47+
final int getNumberOfImportedModules() { result = count(getAnImportedModule()) }
5348

5449
/**
5550
* Gets the `index`th exported module of this module declaration (0-based).
51+
*Gets any of the exported modules of this module declaration.
5652
*
5753
* This includes nodes from the "hidden" AST. It can be overridden in subclasses to change the
5854
* behavior of both the `Immediate` and non-`Immediate` versions.
5955
*/
60-
ModuleDecl getImmediateExportedModule(int index) {
56+
ModuleDecl getAnImmediateExportedModule() {
6157
result =
6258
Synth::convertModuleDeclFromRaw(Synth::convertModuleDeclToRaw(this)
6359
.(Raw::ModuleDecl)
64-
.getExportedModule(index))
60+
.getAnExportedModule())
6561
}
6662

6763
/**
6864
* Gets the `index`th exported module of this module declaration (0-based).
65+
*Gets any of the exported modules of this module declaration.
6966
*/
70-
final ModuleDecl getExportedModule(int index) {
71-
result = getImmediateExportedModule(index).resolve()
72-
}
73-
74-
/**
75-
* Gets any of the exported modules of this module declaration.
76-
*/
77-
final ModuleDecl getAnExportedModule() { result = getExportedModule(_) }
67+
final ModuleDecl getAnExportedModule() { result = getAnImmediateExportedModule().resolve() }
7868

7969
/**
8070
* Gets the number of exported modules of this module declaration.
8171
*/
82-
final int getNumberOfExportedModules() { result = count(int i | exists(getExportedModule(i))) }
72+
final int getNumberOfExportedModules() { result = count(getAnExportedModule()) }
8373
}
8474
}

swift/ql/lib/swift.dbscheme

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -482,17 +482,13 @@ module_decl_is_system_module( //dir=decl
482482
int id: @module_decl ref
483483
);
484484

485-
#keyset[id, index]
486485
module_decl_imported_modules( //dir=decl
487486
int id: @module_decl ref,
488-
int index: int ref,
489487
int imported_module: @module_decl_or_none ref
490488
);
491489

492-
#keyset[id, index]
493490
module_decl_exported_modules( //dir=decl
494491
int id: @module_decl ref,
495-
int index: int ref,
496492
int exported_module: @module_decl_or_none ref
497493
);
498494

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
| file://:0:0:0:0 | Foo | file://:0:0:0:0 | Swift |

swift/ql/test/extractor-tests/generated/decl/ModuleDecl/ModuleDecl_getExportedModule.ql renamed to swift/ql/test/extractor-tests/generated/decl/ModuleDecl/ModuleDecl_getAnExportedModule.ql

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,6 @@
22
import codeql.swift.elements
33
import TestUtils
44

5-
from ModuleDecl x, int index
5+
from ModuleDecl x
66
where toBeTested(x) and not x.isUnknown()
7-
select x, index, x.getExportedModule(index)
7+
select x, x.getAnExportedModule()
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
| file://:0:0:0:0 | Foo | file://:0:0:0:0 | Swift |
2+
| file://:0:0:0:0 | Foo | file://:0:0:0:0 | SwiftOnoneSupport |
3+
| file://:0:0:0:0 | Foo | file://:0:0:0:0 | _Concurrency |
4+
| file://:0:0:0:0 | Foo | file://:0:0:0:0 | _StringProcessing |
5+
| file://:0:0:0:0 | __ObjC | file://:0:0:0:0 | Swift |
6+
| file://:0:0:0:0 | default_module_name | file://:0:0:0:0 | Swift |
7+
| file://:0:0:0:0 | default_module_name | file://:0:0:0:0 | SwiftOnoneSupport |
8+
| file://:0:0:0:0 | default_module_name | file://:0:0:0:0 | _Concurrency |
9+
| file://:0:0:0:0 | default_module_name | file://:0:0:0:0 | _StringProcessing |

swift/ql/test/extractor-tests/generated/decl/ModuleDecl/ModuleDecl_getImportedModule.ql renamed to swift/ql/test/extractor-tests/generated/decl/ModuleDecl/ModuleDecl_getAnImportedModule.ql

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,6 @@
22
import codeql.swift.elements
33
import TestUtils
44

5-
from ModuleDecl x, int index
5+
from ModuleDecl x
66
where toBeTested(x) and not x.isUnknown()
7-
select x, index, x.getImportedModule(index)
7+
select x, x.getAnImportedModule()

swift/ql/test/extractor-tests/generated/decl/ModuleDecl/ModuleDecl_getExportedModule.expected

Lines changed: 0 additions & 1 deletion
This file was deleted.

swift/ql/test/extractor-tests/generated/decl/ModuleDecl/ModuleDecl_getImportedModule.expected

Lines changed: 0 additions & 9 deletions
This file was deleted.

0 commit comments

Comments
 (0)