Merge pull request #14745 from github/alexdenisov/parameter-packs-db-upgrade

Swift: parameter packs migration scripts
This commit is contained in:
AlexDenisov
2023-11-10 18:07:10 +01:00
committed by GitHub
7 changed files with 10712 additions and 0 deletions

View File

@@ -0,0 +1,26 @@
class Element extends @element {
string toString() { none() }
}
query predicate new_unspecified_elements(Element e, string property, string error) {
unspecified_elements(e, property, error)
or
error = "Removed parameter packs during the database downgrade" and
property = "" and
(
pack_element_exprs(e, _) or
pack_expansion_exprs(e, _) or
pack_element_types(e, _) or
pack_expansion_types(e, _, _) or
pack_types(e) or
element_archetype_types(e)
)
}
query predicate new_unspecified_element_children(Element e, int index, Element child) {
unspecified_element_children(e, index, child)
or
pack_element_exprs(e, child) and index = 0
or
pack_expansion_exprs(e, child) and index = 0
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,14 @@
description: Replacing types and expressions related to parameter packs
compatibility: partial
unspecified_elements.rel: run downgrade.ql new_unspecified_elements
unspecified_element_children.rel: run downgrade.ql new_unspecified_element_children
pack_element_exprs.rel: delete
pack_expansion_exprs.rel: delete
pack_element_types.rel: delete
pack_expansion_types.rel: delete
pack_types.rel: delete
pack_type_elements.rel: delete
element_archetype_types.rel: delete

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,2 @@
description: Added parameter pack extraction
compatibility: partial