Alexandre Boulgakov
35a2d55d18
Swift: Extract structured keypath components.
...
Changes in swift/ql/lib are generated by swift/codegen without manual intervention.
2023-04-11 13:34:17 +01:00
Paolo Tranquilli
6f6d3f1262
Merge branch 'main' into redsun82/swift-imported-modules-as-set
2023-03-30 16:42:35 +02:00
Geoffrey White
d8703210dd
Swift: Extract type aliases.
2023-03-29 15:49:12 +01:00
Paolo Tranquilli
20128adee4
Swift: make imported and exported modules a set
2023-03-29 15:44:07 +02:00
Paolo Tranquilli
a131966066
Swift: make SuccessfullyExtractedFiles.ql more precise
...
This is done by adding a `isSuccessfullyExtracted` predicate that is
filled for primary files at the very end of the extractor invocation if
the frontend was performed successfully. If for example the extractor
crashes this will therefore not be filled.
The upgrade script is written so that `SuccessfullyExtractedFiles.ql`
on an upgraded script will give exactly the same results as before it.
2023-03-20 08:34:34 +01:00
Paolo Tranquilli
f2dff092dc
Swift: remove parameter labels from function types
...
As discussed [in this accepted proposal][1], parameter labels do not
take part any more in making up a function type, so we need to not
extract them any more to avoid DB inconsistencies.
These were unused in the library, which makes the upgrade and downgrade
scripts have full compatibility.
[1]: 9c53790a13/proposals/0111-remove-arg-label-type-significance.md
2023-03-17 10:22:02 +01:00
Paolo Tranquilli
54b6c6f8f7
Swift: make AnyGenericType::getDecl's type more specific
...
As shown by the extractor's code not needing any change, the DB values
already had that more specific type, which is why the upgrade/downgrade
scripts are actually no-ops.
2023-03-14 11:49:07 +01:00
Alex Denisov
712c25e6f4
Swift: extract availability info
2023-02-07 14:26:39 +01:00
Paolo Tranquilli
a244b825df
Merge branch 'main' into redsun82/swift-regex
2023-02-07 09:37:09 +01:00
Nora Dimitrijević
50e5b29eb7
Swift: all Callables can have captures [codegen'd]
2023-02-02 11:56:51 +01:00
Nora Dimitrijević
d230431006
Swift: extract closure captures (codegen'd part)
2023-02-02 11:35:49 +01:00
Nora Dimitrijević
9a5614e8c5
Swift: subsume IterableDeclContext into Decl [codegen'd]
2023-01-28 00:44:49 +01:00
Paolo Tranquilli
f6e26211f9
Swift: add protocols to ExtensionDecl schema
2023-01-17 12:54:50 +01:00
Nora Dimitrijević
6269e6b24d
Swift: move getName to Callable (generated)
...
Now that getStaticTarget returns a Callable.
2022-12-14 14:30:33 -05:00
Paolo Tranquilli
fb5b6eab19
Swift: extract RegexLiteralExpr
2022-12-14 09:12:07 +01:00
Alex Denisov
f618d53302
Swift: add new implicit conversion
2022-11-30 12:40:34 +01:00
Nora Dimitrijević
931173350f
Swift: extract missing cases of AccessorKind and AccessSemantics
...
This resolves the warnings that were showing up during extractor-pack
compilation.
2022-11-29 11:31:07 +01:00
Paolo Tranquilli
a3d33e27e2
Swift: ignore IPA classes in dbscheme
2022-11-16 11:39:10 +01:00
Paolo Tranquilli
eb14348153
Merge branch 'main' into redsun82/swift-error-element
2022-11-11 14:36:02 +01:00
Paolo Tranquilli
d3ff4908e6
Merge branch 'main' into redsun82/swift-error-element
2022-11-11 14:05:47 +01:00
Paolo Tranquilli
3816361c15
Merge branch 'main' into redsun82/swift-types
2022-11-11 13:54:12 +01:00
Paolo Tranquilli
85233b3cbf
Swift: add new children to VarDecl
2022-11-11 12:34:40 +01:00
Paolo Tranquilli
88dc65cb3c
Swift: extract or ignore last remaining types
2022-11-10 17:38:32 +01:00
Paolo Tranquilli
c5bb32d6d2
Swift: create common ErrorElement superclass
2022-11-10 16:20:28 +01:00
Paolo Tranquilli
e26e0ec809
Swift: remove imposible nodes from schema
...
We don't expect these AST types to really appear during an extraction
run, even in an unsuccessful compilation.
2022-11-10 15:26:55 +01:00
Paolo Tranquilli
edfecddca1
Swift: extract AppliedPropertyWrapperExpr
2022-11-10 12:55:28 +01:00
Paolo Tranquilli
28c9d6b6b5
Swift: extract PropertyWrapperValuePlaceholderExpr
2022-11-10 11:28:05 +01:00
Paolo Tranquilli
0ccf81e67c
Swift: extract UnresolvedSpecializeExpr
2022-11-09 16:42:22 +01:00
Paolo Tranquilli
4770ad3177
Swift: extract OverloadedDeclRefExpr
2022-11-09 16:06:23 +01:00
Paolo Tranquilli
5f8e7e67b4
Swift: extract ObjectLiteralExpr
2022-11-09 15:51:08 +01:00
Paolo Tranquilli
9d4a208c0d
Swift: extract MissingMemberDecl
2022-11-09 12:04:42 +01:00
Paolo Tranquilli
7bcee6e9a8
Merge branch 'main' into redsun82/swift-decls
2022-11-09 11:59:16 +01:00
AlexDenisov
8756989b4b
Merge pull request #11101 from github/alexdenisov/extractor-errors
...
Swift: extract diagnostics
2022-11-09 11:33:54 +01:00
Paolo Tranquilli
73ad1307ae
Swift: extract PoundDiagnosticDecl
2022-11-09 11:13:55 +01:00
Paolo Tranquilli
b399d8df7e
Swift: extract opaque types and their decls
2022-11-09 09:27:25 +01:00
Paolo Tranquilli
9ee4f8b388
Swift: extract remaining Stmts
...
`FailStmt` are `return nil` in fallible initializers.
`PoundAssertStmt` are an experimental feature for compile time
assertions.
2022-11-08 17:38:17 +01:00
Alex Denisov
62c26f8f27
Swift: add diagnostics to dbscheme
2022-11-08 14:36:25 +01:00
Paolo Tranquilli
e17bc6c581
Swift: add UnspecifiedElement
2022-11-08 11:40:27 +01:00
Paolo Tranquilli
a6b1806e66
Swift: refactor TypeVisitor to use translations
2022-11-03 18:16:53 +01:00
Alex Denisov
ecb5708b66
Swift: fix static assert?
2022-09-22 11:17:07 +02:00
Alex Denisov
b364647d76
Swift: add stubs for new exprs
2022-09-22 11:17:07 +02:00
Alex Denisov
d937234f83
Swift: add stubs for new types
2022-09-22 11:17:07 +02:00
Alex Denisov
13fe02edfa
Swift: NestedArchetypeType was removed
2022-09-22 11:17:04 +02:00
Paolo Tranquilli
96897a0cdc
Swift: implement python schema
...
The information that was contained in `schema.yml` is now in
`swift/schema.py`, which allows a more integrated IDE experience
for writing and navigating it.
Another minor change is that `schema.Class` now has a `str` `group`
field instead of a `pathlib.Path` `dir` one.
2022-09-21 15:53:09 +02:00
Paolo Tranquilli
a50f3f752b
Swift: move toposort in schema.py
...
This makes the result of code generation independent of the order
in which classes are defined in the schema, and makes additional
topological sorting not required.
Being independent from schema order will be important for reviewing the
move to a pure python schema, as generated code will be left untouched.
2022-09-21 10:49:12 +02:00
Paolo Tranquilli
dfc91bb0f0
Swift: make type non optional in TypeRepr
2022-09-20 15:23:27 +02:00
Paolo Tranquilli
72a4bd3f1e
Swift: group unresolved elements and remove their tests
2022-09-20 15:22:20 +02:00
Paolo Tranquilli
7ae68fcc03
Swift: rework IfConfigDecl schema
2022-09-20 15:11:58 +02:00
Paolo Tranquilli
0aecbc2a01
Swift: reorganize some children in schema.yml
2022-08-29 14:52:14 +02:00
Paolo Tranquilli
2e9d9cfb20
Swift: add imported modules properties to ModuleDecl
2022-08-26 11:23:02 +02:00